documentation
  • LATAM Payment Methods
  • Integration guide
    • Getting started
      • Payment Methods
      • Payment Types
      • Supported Brands
      • Overview (Authentication and Endpoint)
    • COPYandPAY
      • Customization
      • Advanced Options
      • COPYandPAY API
      • Tokenization
      • Mobile Optimization
    • Server-to-Server
      • Tokenization
  • Manage Payments
    • Backoffice Operations
    • Recurring Payments
    • Installments
    • ZeroAuth
    • Transactions status
  • Instant Payment Notification (IPN) / Webhooks
    • General Information
    • Integration Guide
  • Queries
    • XML Integrator (Queries)
  • Reporting
    • Overview
    • Processed Report
    • Payout Report
    • Report Availability
    • Glossary of Fields
  • Compliance
    • Mandatory parameters by country
    • Test cards by country
    • Customer Identification Number by country (Customer ID)
    • Supported Countries and States
    • Requirements Before Going-Live
  • Reference
    • API Reference
    • Result Codes
  • FAQ
    • COPYandPAY FAQ
    • PCI DSS
    • TLS 1.2
Powered by GitBook
On this page
  • Quick links
  • Capture (CP) an authorization
  • Refund (RF) a payment
  • Reverse (RV) a payment
  1. Manage Payments

Backoffice Operations

PreviousTokenizationNextRecurring Payments

Last updated 3 years ago

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.

curl https://test.oppwa.com/v1/payments/{id} \
 -d "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.

curl https://test.oppwa.com/v1/payments/{id} \
 -d "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"}

Allowed Refund timelines

Country

Refund timeline (days after purchase)

Argentina

90 days.

Brazil

90 days.

Chile

11 months.

Colombia

120 days.

México

90 days.

Perú

6 months.

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.

curl https://test.oppwa.com/v1/payments/{id} \
 -d "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.

Capture an authorization
Refund a payment
Reverse a payment