Backoffice Operations

You can perform different types of backoffice operations using our Server-to-Server REST API.

Quick links

Note: Backoffice operations can be performed against initial payments that were generated using COPYandPAY or Server-to-Server. The referencedPaymentId is the value return in the id JSON field.

Capture (CP) an authorization

A capture is used to request clearing for previously authorized funds. A capture request is performed against a previous preauthorization (PA) payment by referencing its payment.id and sending a POST request over HTTPS to the /v1/payments/{id} endpoint. Captures can be for full or partial amounts. Note that a capture is a one-time event. Once a capture (even partial) has been performed, the preauthorization is not valid anymore for future captures.

Capture (CP) Request
Response
curl https://test.oppwa.com/v1/payments/{id} \
-d "authentication.entityId=8a8294174e918ca6014e9c6f5ae12a9c" \
-d "amount=1.00" \
-d "currency=BRL" \
-d "paymentType=CP" \
-d "testMode=EXTERNAL" \
-H "Authorization: Bearer OGE4Mjk0MTcyODFiOGVlMzAxMjgyOTkwNjZmNTBjZGJ8ZGVtbw=="
{
"id":"8a8294496242ba5301625069d1b27e3d",
"paymentType":"CP",
"amount":"1.00",
"currency":"BRL",
"descriptor":"123 Usage",
"merchantTransactionId":"Order Number 123",
"result":{
"code":"000.100.112",
"description":"Request successfully processed in 'Merchant in Connector Test Mode'"
},
"customer":{
"merchantCustomerId":"12345678909"
},
"buildNumber":"a21e2790973ffee1922bba6e65ab42c028e7e4d9@2018-03-20 13:31:26 +0000",
"timestamp":"2018-03-23 01:12:17+0000",
"ndc":"8a8294174e918ca6014e9c6f5ae12a9c_9bba1957b8e2492485f25fea121a0842"
}

Refund (RF) a payment

A refund is performed against a previous payment, referencing its payment.id by sending a POST request over HTTPS to the /v1/payments/{id} endpoint. A refund can be performed against debit (DB) or captured preauthorization (PA->CP) payment types. Where supported, the amount field can be used to process a partial or full amount.

Refund (RF) Request
Response
curl https://test.oppwa.com/v1/payments/{id} \
-d "authentication.entityId=8a8294174e918ca6014e9c6f5ae12a9c" \
-d "amount=1.00" \
-d "currency=BRL" \
-d "paymentType=RF" \
-d "testMode=EXTERNAL" \
-H "Authorization: Bearer OGE4Mjk0MTcyODFiOGVlMzAxMjgyOTkwNjZmNTBjZGJ8ZGVtbw=="
{
"id":"8a82944a6242c8f00162506ec4b30d44",
"paymentType":"RF",
"amount":"1.00",
"currency":"BRL",
"descriptor":"123 Usage",
"merchantTransactionId":"Order Number 123",
"result":{
"code":"000.100.112",
"description":"Request successfully processed in 'Merchant in Connector Test Mode'"
},
"customer":{
"merchantCustomerId":"12345678909"
}, "buildNumber":"a21e2790973ffee1922bba6e65ab42c028e7e4d9@2018-03-20 13:31:26 +0000",
"timestamp":"2018-03-23 01:17:41+0000",
"ndc":"8a8294174e918ca6014e9c6f5ae12a9c_29f945aaf03d4d10908622d4a66e6632"}

Reverse (RV) a payment

A reversal is performed against a previous payment, referencing its payment.id by sending a POST request over HTTPS to the /v1/payments/{id} endpoint. A reversal can be sent against debit (DB) or preauthorization (PA) payment types. When reversing a card payment and if sent within 72 hours of the original request, a reversal causes an authorization reversal request to be sent the card issuer to clear the funds held against the authorization.

Reversal (RV) Request
Response
curl https://test.oppwa.com/v1/payments/{id} \
-d "authentication.entityId=8a8294174e918ca6014e9c6f5ae12a9c" \
-d "paymentType=RV" \
-d "testMode=EXTERNAL" \
-H "Authorization: Bearer OGE4Mjk0MTcyODFiOGVlMzAxMjgyOTkwNjZmNTBjZGJ8ZGVtbw=="
{
"id":"8a82944a6242c8f00162505f33cf77ef",
"paymentType":"RV",
"amount":"1.00",
"currency":"MXN",
"descriptor":"7861.8263.2098 MX_CC_Initial 123 Usage",
"merchantTransactionId":"Order Number 321",
"result":{
"code":"000.100.112",
"description":"Request successfully processed in 'Merchant in Connector Test Mode'"
},
"buildNumber":"a21e2790973ffee1922bba6e65ab42c028e7e4d9@2018-03-20 13:31:26 +0000",
"timestamp":"2018-03-23 01:00:40+0000",
"ndc":"8a8294174e918ca6014e9c6f5ae12a9c_2d815eace88a4243ad4f1b1345408c76"
}

Note: A full reversal does not require the amount or currency to be sent. If the acquirer supports it, partial reversals are also possible. In this latter case amount and currency must be specified in the request.