Card Payments (7)

Take online payments with our Card Payments API.

Authentication Header

  Authorization: {your_credentials}

Replace {your_credentials} with your base64-encoded Basic Auth username and password given to your by your Implementation Manager.

You must use the Authorization header for any request you send to our Card Payments APIs, unless you are using client certificate authenticating with SSL/TLS.

Accept/Content-Type Header

Content-Type: application/vnd.worldpay.payments-v7+json
Accept: application/vnd.worldpay.payments-v7+json

We use the Accept header to identify which version of our API you are using. You must use the Accept header for any request you send to our Card Payments APIs.

We require the Content-Type header if the request you're sending includes a request body, and if the HTTP method is a POST or a PUT.

DNS Whitelisting
Whitelist the following URLs:

  • https://try.access.worldpay.com/
  • https://access.worldpay.com/

Please ensure you use DNS whitelisting, not explicit IP whitelisting.

Download OpenAPI description
Languages
Servers
testing (try)
https://try.access.worldpay.com/
live
https://access.worldpay.com/

Take a card payment

Request

Take online card payments using our Card Payments API.

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
transactionReferencestring[ 1 .. 64 ] characters^[-A-Za-z0-9_!@#$%()*=.:;?\[\]{}~`/+]*$required

A unique reference generated by you that is used to identify a payment throughout its lifecycle.

channelstringrequired

Interaction between the cardholder and you. Supply a value of ecom to process an eCommerce authorization. Supply a value of moto to process an authorization as a Mail Order or Telephone Order transaction. Note: 3DS authentication cannot be supplied for MOTO payments.

Enum"ecom""moto"
merchantobjectrequired

An object that contains information about the merchant.

entitystring[ 1 .. 32 ] characters^([A-Za-z0-9]+[A-Za-z0-9 ]*)?$required

Direct your payment to assist with billing, reporting and reconciliation. This is mandatory for authentication and queries.

Example: "default"
mccstring^\d{4}$

You can apply a merchant category code mcc to an individual request. You can only provide an mcc if we have enabled the dynamic mcc feature during boarding. If enabled but not provided, merchant.mcc defaults to a configured value.

paymentFacilitatorobject

An object containing Payment Facilitator information. This information is required for every authorization only if you are a Payment Facilitator.

taxReferencestring[ 1 .. 20 ] characters^(?!\s*$)[a-zA-Z0-9\s-]*$

Merchant's tax reference.

instructionobjectrequired

An object that contains all information related to the payment.

requestAutoSettlementobjectrequired

Indicates whether the transaction should be sent for settlement now true or later false at a time of your choosing.

valueobjectrequired

An object that contains information about the value of the payment.

narrativeobjectrequired

The text that appears on your customer's statement. Used to identify the merchant.

paymentInstrumentobjectrequired
customerAgreementobject

Contains specific customer agreements for the transaction.

consumerBillPaymentboolean

Consumer Bill Payment is a flag which identifies a bill payment paid by providers on behalf of consumers.

debtRepaymentboolean

Debt Repayment Indicator is a flag which identifies a payment with the purpose of repaying a debt.

requestAccountUpdaterboolean

Allows you to request a real-time account update when using a previously stored card. You can only use this with customerAgreement transactions with a storedCardUsage value of subsequent. If the stored card details that you provided for the transaction are no longer valid and new credentials are available, the authorization will be processed with the new card and its details will be returned in the updatedPaymentInstrument object in the response.

fundsTransferobject

Contains details of the funds transfer request, which is a money movement for a reason other than the purchase of goods or services (also known as Account Funding Transaction (AFT)).

routingobject

An object containing specific routing preferences.

riskProfilestring

Used to apply the SCA exemption in the payment request and update the FraudSight data model to benefit future payments.

Example: "https://try.access.worldpay.com/riskProfile/{linkData}"
authenticationobject

An object containing 3DS and/or Network Token authentication details.

threeDSobject
networkTokenobject

Network Token authentication. Only allowed for card/networkToken transactions.

shippingobject

An object containing shipping details.

senderobject
recipientobject
orderobject

An object containing details about the order.

taxExemptboolean

A flag to indicate whether the purchase is exempt from tax. Must be set to true if order.salesTax is 0

orderDateobject

Date of the order.

itemsArray of objects

Array of order items. You can send up to 99 individual order objects within this array.

dutyAmountinteger

Total amount of duty costs for the order.

salesTaxinteger

Total amount of sales tax for the order. Must be provided if merchant.taxReference is supplied.

shippingAmountinteger

Total amount of shipping costs for the order.

invoiceReferencestring[ 1 .. 15 ] characters

Invoice reference for the order.

discountAmountinteger

Total amount of discounts for the order.

recipientobject

Additional transaction recipient data.

accountReferencestring[ 1 .. 10 ] characters^[a-zA-Z0-9]*$

Partial account reference of the primary recipient. Either partial card number (first 6 and last 4, no spaces), or a bank account number

Example: "4444331111"
lastNamestring[ 1 .. 60 ] characters^(@!£*#$+-_=.,/;:')[a-zA-Z0-9\s-]*$

The last name of the recipient. If for a business, then use the company name.

Example: "Smith"
addressobject

Address of the recipient

dateOfBirthobject

Birth date of the recipient

customerobject

Additional customer data.

documentReferencestring

Required for domestic processing in some Latin American countries.

referencestring

Merchant-generated customer reference.

industryDataobject

An object containing industry specific order data.

typestringrequired
Value"airline"
airlineNamestringrequired

The name of the airline (displayed as it would be on a bill).

Example: "Cobb Air"
ticketobjectrequired

An object containing ticket details.

agentNamestring

The name of the travel agent.

Example: "J Small & Co"
agentCodestringrequired

The IATA travel agency code.

Example: 12345678
invoiceReferencestring

Billing Settlement Plan invoice reference.

airlineCodestringrequired

The two character IATA airline code.

Example: "CA"
passengerobjectrequired

An object containing passenger details.

application/vnd.worldpay.payments-v7+json

Payment authorization for GBP 2.50

{ "transactionReference": "Memory265-13/08/1876", "merchant": { "entity": "default" }, "instruction": { "requestAutoSettlement": { "enabled": false }, "narrative": { "line1": "MindPalace" }, "value": { "currency": "GBP", "amount": 250 }, "paymentInstrument": { "type": "card/plain", "cardNumber": "4444333322221111", "expiryDate": { "month": 5, "year": 2035 } } }, "channel": "ecom" }

Responses

The payment authorization has been successfully created

Bodyapplication/vnd.worldpay.payments-v7+json
outcomestringrequired

Outcome of the request. Sent for Settlement returned only if requestAutoSettlement is enabled in the request.

Discriminator
exemptionobject

An exemption result and reason if a risk profile was included in your authorization request.

resultstringrequired
reasonstringrequired
issuerobject

An object containing information returned by the issuer.

authorizationCodestring^[a-zA-Z0-9]+$required

A code returned by the card issuer for a successful authorization. Used in reconciliation and dispute management.

Example: "T31306"
paymentInstrumentobject

Details of the paymentInstrument used.

typestring
cardBinstring^[0-9*]+$

The card BIN (Bank Identification Number) is the first 6 or 8 digits of the card number, and can be used to identify the card issuer, the card brand(s) (eg Visa, Cartes Bancaires), and the country. Card BINs are used to route transactions, check card capabilities, and in fraud assessments.

Example: 444433
lastFourstring^[0-9*]+$

The last four digits of the card. Some characters may be obfuscated with a * if the PAN length is less than 16 characters.

Example: 1111
categorystring

Whether the card is classed as a consumer card or a card for commercial use.

Enum"commercial""consumer"
countryCodestring= 2 characters^[A-Z]+$
Example: "GB"
issuerNamestring

The name of the card issuer.

Example: "AN ISSUING BANK LTD"
fundingTypestring

How the card is funded.

Enum"credit""debit""prepaid""chargeCard""deferredDebit""unknown"
cardBrandstring

The card brand that the transaction was processed with. Sometimes referred to as the network or scheme.

Enum"visa""mastercard""amex""maestro""visaElectron""diners""discover""jcb""argencard""cabal"
paymentAccountReferencestring

The payment account reference (PAR) is a non-financial reference that uniquely identifies the underlying cardholder account. This allows you to correlate payments made from the same account with differing instruments (e.g. card/plain and card/wallet+applepay), where the same account funds the transaction. A PAR cannot be used to initiate a payment.

Example: "Q1HJZ28RKA1EBL470G9XYG90R5D3E"
expiryDateobject

The expiry date of the card or network token (where the supplied paymentInstrument was card/wallet+applepay, card/wallet+googlepay, card/networkToken, card/networkToken+applepay or card/networkToken+googlepay)

updatedPaymentInstrumentobject

Details of the updated payment instrument.

appliedNetworkTokenboolean

Returned if the payment instrument was swapped for a network token.

accountUpdaterMessagestring

Details on the type of payment instrument update.

Enum"The merchant is not registered in the update program""The account number was changed""The account was closed""The expiry was changed""The issuing bank does not participate in the update program""Contact the cardholder for updated information""No match found""No changes found"
Example: "The account number was changed"
typestring
Example: "card/plain+masked"
cardBinstring^[0-9*]+$

The updated card BIN (Bank Identification Number).

Example: 444433
lastFourstring^[0-9*]+$

The four digits of the updated card. Some characters may be obfuscated with a * if the PAN length is less than 16 characters.

Example: 1111
expiryDateobject
cardBrandstring

The brand of the updated card. In rare circumstances a card may be reissued under a different brand.

fundingTypestring

How the card is funded.

riskFactorsArray of objects

Any risk factors which have been identified for the authorization. This section will not appear if no risks are identified.

typestringrequired
Enum"avs""cvc""riskProfile"
riskstringrequired

Result of the verification.

Enum"notChecked""notMatched""notSupplied""verificationFailed"
detailstring
Enum"address""postcode"
schemeobject

An object containing information returned by the card scheme.

referencestringrequired

The reference returned by the scheme for this particular payment authorization. The scheme reference returned in a customer initiated transaction should be provided in all subsequent merchant initiated transactions.

Example: "MCCOLXT1C0104 "
_linksobject
cardPayments:cancelobject

An action link to cancel the full authorized amount.

cardPayments:partialCancelobject

An action link to cancel a portion of the authorized amount.

cardPayments:settleobject

An action link to send the full authorized amount for settlement.

cardPayments:partialSettleobject

An action link to send a portion of the authorized amount for settlement.

cardPayments:reverseobject

An action link to cancel or refund the full amount.

cardPayments:eventsobject

An action link to retrieve the last event of the payment.

Response
application/vnd.worldpay.payments-v7+json

Payment authorization for GBP 2.50 with a successful outcome

{ "outcome": "authorized", "riskFactors": [ { "type": "cvc", "risk": "notSupplied" }, { "type": "avs", "risk": "notChecked", "detail": "address" }, { "type": "avs", "risk": "notChecked", "detail": "postcode" } ], "issuer": { "authorizationCode": "T75725" }, "scheme": { "reference": "MCCOLXT1C0104 " }, "paymentInstrument": { "type": "card/plain+masked", "cardBin": "555555", "lastFour": "4444", "category": "consumer", "countryCode": "GB", "expiryDate": { "month": 9, "year": 2029 }, "cardBrand": "mastercard", "fundingType": "credit", "issuerName": "AN ISSUING BANK LTD", "paymentAccountReference": "Q1HJZ28RKA1EBL470G9XYG90R5D3E" }, "_links": { "cardPayments:cancel": { "href": "https://try.access.worldpay.com/payments/authorizations/cancellations/linkData" }, "cardPayments:partialCancel": { "href": "https://try.access.worldpay.com/payments/authorizations/cancellations/partials/linkData" }, "cardPayments:settle": { "href": "https://try.access.worldpay.com/payments/settlements/full/linkData" }, "cardPayments:partialSettle": { "href": "https://try.access.worldpay.com/payments/settlements/partials/linkData" }, "cardPayments:events": { "href": "https://try.access.worldpay.com/payments/events/linkData" }, "curies": [ { "name": "cardPayments", "href": "https://try.access.worldpay.com/rels/cardPayments/{rel}", "templated": true } ] } }

Take a repeat card payment

Request

Take online payments using our Card Payments API.

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
transactionReferencestring[ 1 .. 64 ] characters^[-A-Za-z0-9_!@#$%()*=.:;?\[\]{}~`/+]*$required

A unique reference generated by you that is used to identify a payment throughout its lifecycle.

merchantobjectrequired

An object that contains information about the merchant.

entitystring[ 1 .. 32 ] characters^([A-Za-z0-9]+[A-Za-z0-9 ]*)?$required

Direct your payment to assist with billing, reporting and reconciliation. This is mandatory for authentication and queries.

Example: "default"
mccstring^\d{4}$

You can apply a merchant category code mcc to an individual request. You can only provide an mcc if we have enabled the dynamic mcc feature during boarding. If enabled but not provided, merchant.mcc defaults to a configured value.

paymentFacilitatorobject

An object containing Payment Facilitator information. This information is required for every authorization only if you are a Payment Facilitator.

taxReferencestring[ 1 .. 20 ] characters^(?!\s*$)[a-zA-Z0-9\s-]*$

Merchant's tax reference.

instructionobjectrequired

An object that contains all information related to the payment.

requestAutoSettlementobjectrequired

Indicates whether the transaction should be sent for settlement now true or later false at a time of your choosing.

valueobjectrequired

An object that contains information about the value of the payment.

narrativeobjectrequired

The text that appears on your customer's statement. Used to identify the merchant.

paymentInstrumentobjectrequired
customerAgreementobjectrequired

Contains specific customer agreements for the transaction.

consumerBillPaymentboolean

Consumer Bill Payment is a flag which identifies a bill payment paid by providers on behalf of consumers.

requestAccountUpdaterboolean

Allows you to request a real-time account update when using a previously stored card. You can only use this with customerAgreement transactions with a storedCardUsage value of subsequent. If the stored card details that you provided for the transaction are no longer valid and new credentials are available, the authorization will be processed with the new card and its details will be returned in the updatedPaymentInstrument object in the response.

debtRepaymentboolean

Debt Repayment Indicator is a flag which identifies a payment with the purpose of repaying a debt.

fundsTransferobject

Contains details of the funds transfer request, which is a money movement for a reason other than the purchase of goods or services (also known as Account Funding Transaction (AFT)).

routingobject

An object containing specific routing preferences.

recipientobject

Additional transaction recipient data.

accountReferencestring[ 1 .. 10 ] characters^[a-zA-Z0-9]*$

Partial account reference of the primary recipient. Either partial card number (first 6 and last 4, no spaces), or a bank account number

Example: "4444331111"
lastNamestring[ 1 .. 60 ] characters^(@!£*#$+-_=.,/;:')[a-zA-Z0-9\s-]*$

The last name of the recipient. If for a business, then use the company name.

Example: "Smith"
addressobject

Address of the recipient

dateOfBirthobject

Birth date of the recipient

shippingobject

An object containing shipping details.

senderobject
recipientobject
orderobject

An object containing details about the order.

taxExemptboolean

A flag to indicate whether the purchase is exempt from tax. Must be set to true if order.salesTax is 0

orderDateobject

Date of the order.

itemsArray of objects

Array of order items. You can send up to 99 individual order objects within this array.

dutyAmountinteger

Total amount of duty costs for the order.

salesTaxinteger

Total amount of sales tax for the order. Must be provided if merchant.taxReference is supplied.

shippingAmountinteger

Total amount of shipping costs for the order.

invoiceReferencestring[ 1 .. 15 ] characters

Invoice reference for the order.

discountAmountinteger

Total amount of discounts for the order.

customerobject

Additional customer data.

documentReferencestring

Required for domestic processing in some Latin American countries.

referencestring

Merchant-generated customer reference.

industryDataobject

An object containing industry specific order data.

typestringrequired
Value"airline"
airlineNamestringrequired

The name of the airline (displayed as it would be on a bill).

Example: "Cobb Air"
ticketobjectrequired

An object containing ticket details.

agentNamestring

The name of the travel agent.

Example: "J Small & Co"
agentCodestringrequired

The IATA travel agency code.

Example: 12345678
invoiceReferencestring

Billing Settlement Plan invoice reference.

airlineCodestringrequired

The two character IATA airline code.

Example: "CA"
passengerobjectrequired

An object containing passenger details.

riskProfilestring

Used to update the FraudSight data model to benefit future payments.

Example: "https://try.access.worldpay.com/riskProfile/{linkData}"
application/vnd.worldpay.payments-v7+json

MIT authorization for subscriptions

{ "transactionReference": "Memory265-13/08/1876", "merchant": { "entity": "default" }, "instruction": { "requestAutoSettlement": { "enabled": false }, "narrative": { "line1": "MindPalace" }, "value": { "currency": "GBP", "amount": 250 }, "paymentInstrument": { "type": "card/plain", "cardNumber": "4444333322221111", "expiryDate": { "month": 5, "year": 2035 } }, "customerAgreement": { "type": "subscription", "schemeReference": "MCCOLXT1C0104 " } } }

Responses

The payment authorization has been successfully created

Bodyapplication/vnd.worldpay.payments-v7+json
outcomestringrequired

Outcome of the request. Sent for Settlement returned only if requestAutoSettlement is enabled in the request.

Discriminator
exemptionobject

An exemption result and reason if a risk profile was included in your authorization request.

resultstringrequired
reasonstringrequired
issuerobject

An object containing information returned by the issuer.

authorizationCodestring^[a-zA-Z0-9]+$required

A code returned by the card issuer for a successful authorization. Used in reconciliation and dispute management.

Example: "T31306"
paymentInstrumentobject

Details of the paymentInstrument used.

typestring
cardBinstring^[0-9*]+$

The card BIN (Bank Identification Number) is the first 6 or 8 digits of the card number, and can be used to identify the card issuer, the card brand(s) (eg Visa, Cartes Bancaires), and the country. Card BINs are used to route transactions, check card capabilities, and in fraud assessments.

Example: 444433
lastFourstring^[0-9*]+$

The last four digits of the card. Some characters may be obfuscated with a * if the PAN length is less than 16 characters.

Example: 1111
categorystring

Whether the card is classed as a consumer card or a card for commercial use.

Enum"commercial""consumer"
countryCodestring= 2 characters^[A-Z]+$
Example: "GB"
issuerNamestring

The name of the card issuer.

Example: "AN ISSUING BANK LTD"
fundingTypestring

How the card is funded.

Enum"credit""debit""prepaid""chargeCard""deferredDebit""unknown"
cardBrandstring

The card brand that the transaction was processed with. Sometimes referred to as the network or scheme.

Enum"visa""mastercard""amex""maestro""visaElectron""diners""discover""jcb""argencard""cabal"
paymentAccountReferencestring

The payment account reference (PAR) is a non-financial reference that uniquely identifies the underlying cardholder account. This allows you to correlate payments made from the same account with differing instruments (e.g. card/plain and card/wallet+applepay), where the same account funds the transaction. A PAR cannot be used to initiate a payment.

Example: "Q1HJZ28RKA1EBL470G9XYG90R5D3E"
expiryDateobject

The expiry date of the card or network token (where the supplied paymentInstrument was card/wallet+applepay, card/wallet+googlepay, card/networkToken, card/networkToken+applepay or card/networkToken+googlepay)

updatedPaymentInstrumentobject

Details of the updated payment instrument.

appliedNetworkTokenboolean

Returned if the payment instrument was swapped for a network token.

accountUpdaterMessagestring

Details on the type of payment instrument update.

Enum"The merchant is not registered in the update program""The account number was changed""The account was closed""The expiry was changed""The issuing bank does not participate in the update program""Contact the cardholder for updated information""No match found""No changes found"
Example: "The account number was changed"
typestring
Example: "card/plain+masked"
cardBinstring^[0-9*]+$

The updated card BIN (Bank Identification Number).

Example: 444433
lastFourstring^[0-9*]+$

The four digits of the updated card. Some characters may be obfuscated with a * if the PAN length is less than 16 characters.

Example: 1111
expiryDateobject
cardBrandstring

The brand of the updated card. In rare circumstances a card may be reissued under a different brand.

fundingTypestring

How the card is funded.

riskFactorsArray of objects

Any risk factors which have been identified for the authorization. This section will not appear if no risks are identified.

typestringrequired
Enum"avs""cvc""riskProfile"
riskstringrequired

Result of the verification.

Enum"notChecked""notMatched""notSupplied""verificationFailed"
detailstring
Enum"address""postcode"
schemeobject

An object containing information returned by the card scheme.

referencestringrequired

The reference returned by the scheme for this particular payment authorization. The scheme reference returned in a customer initiated transaction should be provided in all subsequent merchant initiated transactions.

Example: "MCCOLXT1C0104 "
_linksobject
cardPayments:cancelobject

An action link to cancel the full authorized amount.

cardPayments:partialCancelobject

An action link to cancel a portion of the authorized amount.

cardPayments:settleobject

An action link to send the full authorized amount for settlement.

cardPayments:partialSettleobject

An action link to send a portion of the authorized amount for settlement.

cardPayments:reverseobject

An action link to cancel or refund the full amount.

cardPayments:eventsobject

An action link to retrieve the last event of the payment.

Response
application/vnd.worldpay.payments-v7+json

Payment authorization for GBP 2.50 with a successful outcome

{ "outcome": "authorized", "riskFactors": [ { "type": "cvc", "risk": "notSupplied" }, { "type": "avs", "risk": "notChecked", "detail": "address" }, { "type": "avs", "risk": "notChecked", "detail": "postcode" } ], "issuer": { "authorizationCode": "675725" }, "scheme": { "reference": "MCCOLXT1C0104 " }, "paymentInstrument": { "type": "card/plain+masked", "cardBin": "555555", "lastFour": "4444", "category": "consumer", "countryCode": "GB", "expiryDate": { "month": 9, "year": 2029 }, "cardBrand": "mastercard", "fundingType": "credit", "issuerName": "AN ISSUING BANK LTD", "paymentAccountReference": "Q1HJZ28RKA1EBL470G9XYG90R5D3E" }, "_links": { "cardPayments:cancel": { "href": "https://try.access.worldpay.com/payments/authorizations/cancellations/" }, "cardPayments:settle": { "href": "https://try.access.worldpay.com/payments/settlements/full/" }, "cardPayments:partialSettle": { "href": "https://try.access.worldpay.com/payments/settlements/partials/" }, "cardPayments:events": { "href": "https://try.access.worldpay.com/payments/events/" }, "curies": [ { "name": "cardPayments", "href": "https://try.access.worldpay.com/rels/cardPayments/{rel}", "templated": true } ] } }

Manage Payments

Operations

Settle for full amount

Request

To receive all the funds from the customer, send us a settle request.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
merchantobject

Contains information about the merchant.

taxReferencestring

Merchant's tax reference.

customerobject

Additional customer data.

referencestring

Merchant-generated customer reference.

shippingobject

An object containing shipping details.

senderobject
recipientobject
orderobject

An object containing details about the order.

taxExemptboolean

A flag to indicate whether the purchase is exempt from tax. Must be set to true if order.salesTax is 0

orderDateobject

Date of the order.

itemsArray of objects

Array of order items. You can send up to 99 individual order objects within this array.

dutyAmountinteger

Total amount of duty costs for the order.

salesTaxinteger

Total amount of sales tax for the order. Must be provided if merchant.taxReference is supplied.

shippingAmountinteger

Total amount of shipping costs for the order.

invoiceReferencestring[ 1 .. 15 ] characters

Invoice reference for the order.

discountAmountinteger

Total amount of discounts for the order.

industryDataobject

An object containing industry specific order data.

typestringrequired
Value"airline"
airlineNamestringrequired

The name of the airline (displayed as it would be on a bill).

Example: "Cobb Air"
ticketobjectrequired

An object containing ticket details.

agentNamestring

The name of the travel agent.

Example: "J Small & Co"
agentCodestringrequired

The IATA travel agency code.

Example: 12345678
invoiceReferencestring

Billing Settlement Plan invoice reference.

airlineCodestringrequired

The two character IATA airline code.

Example: "CA"
passengerobjectrequired

An object containing passenger details.

application/vnd.worldpay.payments-v7+json

Request to settle the authorization

Responses

The payment settlement has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to fully settle the authorization

{ "_links": { "cardPayments:refund": { "href": "/payments/settlements/refunds/full/:linkData" }, "cardPayments:partialRefund": { "href": "/payments/settlements/refunds/partials/:linkData" }, "cardPayments:events": { "href": "/payments/events/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Settle for partial amount

Request

To receive a portion of the funds of a payment, send us a partial settle request.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
valueobjectrequired

An object that contains information about the value of the payment.

amountintegerrequired

The payment amount. This is a whole number with an exponent e.g. if exponent is two, 250 is 2.50.

Example: 250
currencystringrequired
Example: "USD"
referencestringrequired
merchantobject

Contains information about the merchant.

taxReferencestring

Merchant's tax reference.

customerobject

Additional customer data.

referencestring

Merchant-generated customer reference.

shippingobject

An object containing shipping details.

senderobject
recipientobject
orderobject

An object containing details about the order.

taxExemptboolean

A flag to indicate whether the purchase is exempt from tax. Must be set to true if order.salesTax is 0

orderDateobject

Date of the order.

itemsArray of objects

Array of order items. You can send up to 99 individual order objects within this array.

dutyAmountinteger

Total amount of duty costs for the order.

salesTaxinteger

Total amount of sales tax for the order. Must be provided if merchant.taxReference is supplied.

shippingAmountinteger

Total amount of shipping costs for the order.

invoiceReferencestring[ 1 .. 15 ] characters

Invoice reference for the order.

discountAmountinteger

Total amount of discounts for the order.

industryDataobject

An object containing industry specific order data.

typestringrequired
Value"airline"
airlineNamestringrequired

The name of the airline (displayed as it would be on a bill).

Example: "Cobb Air"
ticketobjectrequired

An object containing ticket details.

agentNamestring

The name of the travel agent.

Example: "J Small & Co"
agentCodestringrequired

The IATA travel agency code.

Example: 12345678
invoiceReferencestring

Billing Settlement Plan invoice reference.

airlineCodestringrequired

The two character IATA airline code.

Example: "CA"
passengerobjectrequired

An object containing passenger details.

sequenceobject

The sequence number and total number of expected partial settlement requests for the payment.

numberintegerrequired
totalintegerrequired
application/vnd.worldpay.payments-v7+json

Request to partially settle the authorization

{ "value": { "amount": 500, "currency": "EUR" }, "reference": "partial-settle-reference" }

Responses

The partial settlement has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to partially settle the authorization

{ "_links": { "cardPayments:refund": { "href": "/payments/settlements/refunds/full/:linkData" }, "cardPayments:partialRefund": { "href": "/payments/settlements/refunds/partials/:linkData" }, "cardPayments:partialSettle": { "href": "/payments/settlements/partials/:linkData" }, "cardPayments:cancel": { "href": "/payments/authorizations/cancellations/:linkData" }, "cardPayments:events": { "href": "/payments/events/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Refund full amount

Request

Send a refund request to return the full settled amount to your customer. Note: No request body is needed for this request.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
No request payload

Responses

The refund request has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to refund an authorization

{ "_links": { "cardPayments:events": { "href": "/payments/events/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Refund partial amount

Request

Send a partial refund request to return a portion of the settled amount to your customer. Send the amount to refund and the authorization currency in the body.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
valueobjectrequired

An object that contains information about the value of the payment.

amountintegerrequired

The payment amount. This is a whole number with an exponent e.g. if exponent is two, 250 is 2.50.

Example: 250
currencystringrequired
Example: "USD"
referencestringrequired
application/vnd.worldpay.payments-v7+json

Request to perform a partial refund of the settlement

{ "value": { "amount": 10, "currency": "EUR" }, "reference": "partial-refund-reference" }

Responses

The partial refund has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to partially refund an authorization

{ "_links": { "cardPayments:events": { "href": "/payments/events/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Cancel full authorization

Request

If you don't want to proceed with a payment, you can send a full cancel request Note: You can only cancel a payment which is authorized. If the payment is settled, you must create a refund.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
No request payload

Responses

The cancellation request has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to cancel an authorization

{ "_links": { "cardPayments:events": { "href": "/payments/events/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Cancel partial authorization

Request

If you don't want to proceed with a payment, you can send a partial cancel request Note: You can only cancel a payment which is authorized. If the payment is settled, you must create a refund.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
valueobjectrequired

An object that contains information about the value of the payment.

amountintegerrequired

The payment amount. This is a whole number with an exponent e.g. if exponent is two, 250 is 2.50.

Example: 250
currencystringrequired
Example: "USD"
referencestringrequired
application/vnd.worldpay.payments-v7+json

Request to partially cancel the authorization

{ "value": { "amount": 500, "currency": "EUR" }, "reference": "partial-cancel-reference" }

Responses

The partial cancellation request has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to cancel an authorization

{ "_links": { "cardPayments:events": { "href": "/payments/events/:linkData" }, "cardPayments:partialCancel": { "href": "/payments/authorizations/cancellations/partials/:linkData" }, "cardPayments:partialSettle": { "href": "/payments/settlements/partials/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Increase authorization amount

Request

If you want to increase an intial estimated authorization amount (submitted with estimated flag true), you can send a incremental authorization request.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
Bodyapplication/vnd.worldpay.payments-v7+json
valueobjectrequired

An object that contains information about the value of the payment.

amountintegerrequired

The payment amount. This is a whole number with an exponent e.g. if exponent is two, 250 is 2.50.

Example: 250
currencystringrequired
Example: "USD"
application/vnd.worldpay.payments-v7+json

Request to increase the initial estimated authorization

{ "value": { "amount": 500, "currency": "EUR" } }

Responses

The increase authorization amount request has been successful

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to increase an estimated authorization amount

{ "outcome": "authorized", "amounts": { "totalAuthorized": 1100, "currency": "GBP" }, "issuer": { "authorizationCode": "T91252" }, "scheme": { "reference": "MCCRU3I5U0701" }, "_links": { "cardPayments:increaseAuthorizedAmount": { "href": "/payments/authorizations/incrementalAuthorizations/:linkData" }, "cardPayments:events": { "href": "/payments/events/:linkData" }, "cardPayments:partialCancel": { "href": "/payments/authorizations/cancellations/partials/:linkData" }, "cardPayments:partialSettle": { "href": "/payments/settlements/partials/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Reversal

Request

Your reversal request is processed as a cancel or refund request. This depends on the time passed after your sale request was submitted. For US entities the payment is refunded after one day after a successful sale request. Any other payment moves to refunded after 15 minutes. Note: No request body is needed for this request.

Path
linkDatastringrequired

Action link that's received in your request

Headers
Content-Typestringrequired
Example: application/vnd.worldpay.payments-v7+json
Acceptstringrequired
Example: application/vnd.worldpay.payments-v7+json
No request payload

Responses

The reversal request has been accepted

Bodyapplication/vnd.worldpay.payments-v7+json
Response
application/vnd.worldpay.payments-v7+json

Response to reverse the settlement

{ "_links": { "cardPayments:events": { "href": "/payments/events/:linkData" }, "curies": [ { "name": "payments", "href": "/rels/payments/{rel}", "templated": true } ] } }

Query a Payment

Operations