Record a manual payment on an order
Records a manual payment (cash, bank transfer, external processor, etc.) against an order. Does not go through any payment gateway — the payment is recorded as-is and the order’s paid amount is updated immediately.
POST
/orders/{order_id}/paymentsAuthorization
AuthorizationBearer token (JWT) · headerrequiredPath parameters
order_idstringrequiredRequest body
requiredapplication/jsonamountintegerrequiredPayment amount in cents
authorization_codestringReference / receipt number
descriptionstringtransaction_idstringExternal transaction identifier
Responses
201Payment recorded
idintegerorder_idintegeramountintegerAmount in cents (negative for refunds)
absolute_amountintegerAbsolute value of `amount` in cents
successfulbooleancard_token_idintegerpayment_method_typestringtransaction_idstringGateway transaction ID
authorization_codestringdescriptionstringcreated_atstring<date-time>Request
curl -X POST "https://api.onbolder.com/v2/orders/string/payments" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"amount": 5000,
"description": "Wire transfer ref. XYZ"
}'const response = await fetch("https://api.onbolder.com/v2/orders/string/payments", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
body: JSON.stringify({
"amount": 5000,
"description": "Wire transfer ref. XYZ"
})
});import requests
response = requests.post(
"https://api.onbolder.com/v2/orders/string/payments",
headers={
"Authorization": "Bearer YOUR_TOKEN",
"Content-Type": "application/json"
},
json={
"amount": 5000,
"description": "Wire transfer ref. XYZ"
},
)Response
{
"id": 0,
"order_id": 0,
"amount": 0,
"absolute_amount": 0,
"successful": true,
"card_token_id": 0,
"payment_method_type": "string",
"transaction_id": "string",
"authorization_code": "string",
"description": "string",
"created_at": "2019-08-24T14:15:22Z"
}