Captures with Level III Data

This section shows you how to capture an authorized transaction with Level III data. These required fields and example are specific to
Visa Platform Connect
.
For required fields, optional fields, and examples specific to your processor see the Level II and Level III Processing developer guides.

Endpoint

Production:
POST
https://api.cybersource.com
/pts/v2/payments/
{id}
/captures
Test:
POST
https://apitest.cybersource.com
/pts/v2/payments/
{id}
/captures
The
{id}
is the transaction ID returned in the authorization response.

Required Fields for Capturing a Payment with Level III Data

Use these required fields to capture a payment that includes Level III data.
Set to
1
if the sum of all
orderInformation.lineItems[].taxDetails[].amount
values >
0
.
Required for purchase/procurement cards only.
Required if the sum of all
orderInformation.lineItems[].taxAmount
values >
0
.
Set field to
3
.

Optional Fields for Capturing a Payment with Level III Data

You can use these optional fields to include additional information when capturing a payment with Level III data.
buyerInformation.vatRegistrationNumber
merchantInformation.cardAcceptorReferenceNumber
merchantInformation.vatRegistrationNumber
order.vatTaxAmountSign
orderInformation.amountDetails.discountAmount
orderInformation.amountDetails.dutyAmount
orderInformation.amountDetails.freightAmount
orderInformation.amountDetails.taxAppliedAfterDiscount
orderInformation.amountDetails.taxAppliedLevel
orderInformation.amountDetails.taxDetails[].amount
orderInformation.amountDetails.taxDetails[].rate
orderInformation.invoiceDetails.commodityCode
orderInformation.invoiceDetails.purchaseContactName
orderInformation.invoiceDetails.purchaseOrderDate
orderInformation.invoiceDetails.vatInvoiceReferenceNumber
orderInformation.lineItems[].commodityCode
orderInformation.lineItems[].discountAmount
orderInformation.lineItems[].discountRate
orderInformation.lineItems[].invoiceNumber
orderInformation.lineItems[].productCode
orderInformation.lineItems[].productName
orderInformation.lineItems[].quantity
orderInformation.lineItems[].taxAppliedAfterDiscount
orderInformation.lineItems[].taxDetails[].amount
orderInformation.lineItems[].taxRate
orderInformation.lineItems[].taxStatusIndicator
orderInformation.lineItems[].totalAmount
orderInformation.lineItems[].typeOfSupply
orderInformation.lineItems[].unitOfMeasure
orderInformation.lineItems[].unitPrice
orderInformation.shippingDetails.shipFromPostalCode
orderInformation.shipTo.administrativeArea
orderInformation.shipTo.postalCode
senderInformation.vatRegistrationNumber

REST Example: Capturing a Payment with Level III Data

Request
{ "clientReferenceInformation": { "code": "TC50171_14" }, "processingInformation": { "purchaseLevel": "3" }, "orderInformation": { "amountDetails": { "totalAmount": "200.00", "currency": "USD" }, "lineItems": [ { "productCode": "service", "productName": "TestProduct1", "quantity": "2", "unitPrice": "40.00", "unitOfMeasure": "EA", "totalAmount": "100.00", "taxAmount": "20.00" } ], "invoiceDetails": { "purchaseOrderNumber": "L3PurchaseOrderNo", "purchaseOrderDate": "2024-11-15", "taxable": true } } }
Response to a Successful Request
{ "_links": { "void": { "method": "POST", "href": "/pts/v2/captures/7319475673656287004951/voids" }, "self": { "method": "GET", "href": "/pts/v2/captures/7319475673656287004951" } }, "clientReferenceInformation": { "code": "TC50171_14" }, "id": "7319475673656287004951", "orderInformation": { "invoiceDetails": { "level3TransmissionStatus": "Y" }, "amountDetails": { "totalAmount": "200.00", "currency": "USD" } }, "reconciliationId": "68960954X33X5WQ2", "status": "PENDING", "submitTimeUtc": "2024-11-18T16:32:47Z" }