- Home
- All APIs
- Access Worldpay
- Payouts API
- Payout to a wallet
Payout to a wallet
Use our card on file resource to authorize a payment with a digital wallet.
Note: You must
Payout to wallet flow
- Integrate with your mobile wallet provider:
Apple Pay andGoogle Pay - Integrate with our Payments API - use our
endpoint with your encrypted payload - see belowpayments:cardOnFileAuthorize
- You receive a
tokens:token
in your response - Integrate with our Payouts API - use your token to
make a payout withpayoutInstrument
`"type": "card/tokenized"Card on file authorization request
POST
your initial card on file authorizations to our payments:cardOnFileAuthorize
action link resource received in your
Card on file authorization example request:
POST https://try.access.worldpay.com/payments/authorizations/cardOnFile
cardOnFile
authorization request body
{
"transactionReference": "Memory265-13/08/1876",
"merchant": {
"entity": "MindPalaceLtd"
},
"instruction": {
"narrative": {
"line1": "Mind Palace Ltd"
},
"value": {
"currency": "GBP",
"amount": 250
},
"paymentInstrument": {
"type": "card/wallet+applepay",
"walletToken": "{\"version\": \"EC_v1\",\"data\": \"kdHd..GQ==\",\"signature\": \"MIAGCSqGSIb3DQEH...AAA\",\"header\": {\"transactionId\": \"d3b28af..f8\",\"ephemeralPublicKey\": \"MFkwE..Q==\",\"publicKeyHash\": \"dxCK..6o=\"}}"
}
}
}
{
"transactionReference": "Memory265-13/08/1876",
"merchant": {
"entity": "MindPalaceLtd"
},
"instruction": {
"narrative": {
"line1": "Mind Palace Ltd"
},
"value": {
"currency": "GBP",
"amount": 250
},
"paymentInstrument": {
"type": "card/wallet+googlepay",
"walletToken": "{\"version\": \"EC_v1\",\"data\": \"kdHd..GQ==\",\"signature\": \"MIAGCSqGSIb3DQEH...AAA\",\"header\": {\"transactionId\": \"d3b28af..f8\",\"ephemeralPublicKey\": \"MFkwE..Q==\",\"publicKeyHash\": \"dxCK..6o=\"}}"
}
}
}
Descriptions of your authorization request parameters
Parameter | Required | Description |
---|---|---|
transactionReference | A unique reference generated by you that is used to identify a payment throughout its lifecycle. See | |
merchant | An object that contains information about the merchant. | |
merchant.entity | Directs your payment to assist with billing, reporting and reconciliation. This is mandatory for authentication and queries. Contact your Implementation Manager for more details. | |
instruction | An object that contains all the information related to the payment. | |
instruction.narrative | The text that appears on your customer's statement. Used to identify the merchant. See | |
narrative.line1 | The first line of the narrative which appears on your customer's statement (24 characters max. If character is not supported it is replaced with a space.). See line1 format | |
instruction.value | An object that contains information about the value of the payment. | |
value.currency | The three digit currency code. See list of | |
value.amount | The payment amount. This is a whole number with an exponent e.g. if exponent is two, 250 is 2.50. You can find the relevant exponent in our | |
instruction.paymentInstrument | An object that contains the payment type and details. You must integrate withcard/wallet+applepay /card/wallet+googlepay paymentInstrument . |
The requests below contain all the mandatory and optional fields needed for a successful cardOnFile
authorization request. The full request schema is also available in our
Complete card on file authorization request schema
Full cardOnFile
authorization request body:
{
"transactionReference": "Memory265-13/08/1876",
"merchant": {
"entity": "MindPalaceLtd"
},
"instruction": {
"intent": "instalment",
"narrative": {
"line1": "Mind Palace Ltd",
"line2": "Memory265-13/08/1876"
},
"value": {
"currency": "GBP",
"amount": 1000
},
"paymentInstrument": {
"type": "card/wallet+applepay",
"walletToken": "{\"version\": \"EC_v1\",\"data\": \"kdHd..GQ==\",\"signature\": \"MIAGCSqGSIb3DQEH...AAA\",\"header\": {\"transactionId\": \"d3b28af..f8\",\"ephemeralPublicKey\": \"MFkwE..Q==\",\"publicKeyHash\": \"dxCK..6o=\"}}",
"billingAddress": {
"address1": "221B Baker Street",
"address2": "Marylebone",
"address3": "Westminster",
"postalCode": "NW1 6XE",
"city": "London",
"state": "Greater London",
"countryCode": "GB"
}
}
}
}
{
"transactionReference": "Memory265-13/08/1876",
"merchant": {
"entity": "MindPalaceLtd"
},
"instruction": {
"intent": "instalment",
"narrative": {
"line1": "Mind Palace Ltd",
"line2": "Memory265-13/08/1876"
},
"value": {
"currency": "GBP",
"amount": 1000
},
"paymentInstrument": {
"type": "card/wallet+googlepay",
"walletToken": "{\"version\": \"EC_v1\",\"data\": \"kdHd..GQ==\",\"signature\": \"MIAGCSqGSIb3DQEH...AAA\",\"header\": {\"transactionId\": \"d3b28af..f8\",\"ephemeralPublicKey\": \"MFkwE..Q==\",\"publicKeyHash\": \"dxCK..6o=\"}}",
"billingAddress": {
"address1": "221B Baker Street",
"address2": "Marylebone",
"address3": "Westminster",
"postalCode": "NW1 6XE",
"city": "London",
"state": "Greater London",
"countryCode": "GB"
}
}
}
}
Descriptions of your card on file authorization request parameters
Parameter | Required | Description |
---|---|---|
instruction.intent | A parameter detailing the reason for this particular repeat agreement. Possible value:
| |
narrative.line2 | Additional details about the payment e.g. order number, telephone number. |
Card on file response
Successful response
You receive:
- an HTTP code
201
- an
"outcome": "authorized"
- risk factors (only returned if issuer identifies conflict)
- a scheme reference
- a
paymentInstrument
detailing brand information about the card that was used - links to
cancel ,settle ,partially settle ortrack payment events - authorization links
- a token link you can use to make a Payout
Refused response
You receive:
- an HTTP code
201
- an
"outcome": "refused"
- a
refusal code - a
description
which gives additional context on the refusal - risk factors (only returned if issuer identifies conflict)
- a
paymentInstrument
Example response
{
"outcome": "authorized",
"riskFactors": [{
"risk": "not_checked",
"detail": "postcode",
"type": "avs"
},
{
"risk": "not_checked",
"detail": "address",
"type": "avs"
}
],
"scheme": {
"reference": "schemeReference"
},
"paymentInstrument": {
"type": "card/network+masked",
"card": {
"number": {
"bin": "444433",
"last4Digits": "1111",
"dpan": "4444333322221111"
},
"countryCode": "GB",
"expiryDate": {
"month": 6,
"year": 2021
},
"brand": "visa",
"fundingType": "debit",
"issuer": {
"name": "VALID_ISSUER"
},
"paymentAccountReference": "somePAR"
}
},
"_links": {
"payments:cancel": {
"href": "https://try.access.worldpay.com/payments/authorizations/cancellations/eyJrIjoiazUyOTVhMSIsImxpbmtWZXJzaW9uIjoiMy4wLjAifQ==.7uyuNo1ShOgM5rTwStg86LXzb0a2wdLW1lwX:DIQ2Ecrp4gw65VLnHmjsAVqzpa2NcwixaBb2p8R2x5NPXdRpybJ2ndKlbkNOc9gj+ruN20iaTdYqv2FNgB3ZAw3g+yyUMUlQDFD8DU++ZswXpUQe8YTBHmTP8zHQUXrSORn9IaI6kzJnMu2HWwEJOqKnWLvRCMy:fr4ptatJJrmRVON8WTjisJL:sd3TJ9uDcO:gD+q+Q01y++Mzop0k8y3bDcnNBpsG:8xf4uKGGYO3EcAWA=="
},
"payments:settle": {
"href": "https://try.access.worldpay.com/payments/settlements/full/eyJrIjoiazUyOTVhMSIsImxpbmtWZXJzaW9uIjoiMy4wLjAifQ==.7uyuNo1ShOgM5rTwStg86LXzb0a2wdLW1lwX:DIQ2Ecrp4gw65VLnHmjsAVqzpa2NcwixaBb2p8R2x5NPXdRpybJ2ndKlbkNOc9gj+ruN20iaTdYqv2FNgB3ZAw3g+yyUMUlQDFD8DU++ZswXpUQe8YTBHmTP8zHQUXrSORn9IaI6kzJnMu2HWwEJOqKnWLvRCMy:fr4ptatJJrmRVON8WTjisJL:sd3TJ9uDcO:gD+q+Q01y++Mzop0k8y3bDcnNBpsG:8xf4uKGGYO3EcAWA=="
},
"payments:partialSettle": {
"href": "https://try.access.worldpay.com/payments/settlements/partials/eyJrIjoiazUyOTVhMSIsImxpbmtWZXJzaW9uIjoiMy4wLjAifQ==.7uyuNo1ShOgM5rTwStg86LXzb0a2wdLW1lwX:DIQ2Ecrp4gw65VLnHmjsAVqzpa2NcwixaBb2p8R2x5NPXdRpybJ2ndKlbkNOc9gj+ruN20iaTdYqv2FNgB3ZAw3g+yyUMUlQDFD8DU++ZswXpUQe8YTBHmTP8zHQUXrSORn9IaI6kzJnMu2HWwEJOqKnWLvRCMy:fr4ptatJJrmRVON8WTjisJL:sd3TJ9uDcO:gD+q+Q01y++Mzop0k8y3bDcnNBpsG:8xf4uKGGYO3EcAWA=="
},
"payments:events": {
"href": "https://try.access.worldpay.com/payments/events/eyJrIjoiazUyOTVhMSIsImxpbmtWZXJzaW9uIjoiMy4wLjAifQ==.7uyuNo1ShOgM5rTwStg86LXzb0a2wdLW1lwX:DIQ2Ecrp4gw65VLnHmjsAVqzpa2NcwixaBb2p8R2x5NPXdRpybJ2ndKlbkNOc9gj+ruN20iaTdYqv2FNgB3ZAw3g+yyUMUlQDFD8DU++ZswXpUQe8YTBHmTP8zHQUXrSORn9IaI6kzJnMu2HWwEJOqKnWLvRCMy:fr4ptatJJrmRVON8WTjisJL:sd3TJ9uDcO:gD+q+Q01y++Mzop0k8y3bDcnNBpsG:8xf4uKGGYO3EcAWA=="
},
"payments:cardOnFileAuthorize": {
"href": "https://try.access.worldpay.com/payments/authorizations/cardOnFile/eyJrIjoiazUyOTVhMSIsImxpbmtWZXJzaW9uIjoiMS4wLjAifQ==.R6PzeBs1kC+VT5dtn2WKHquYi:0CPtdsTmoC0CiPjw6CkE+Ujvons6ZVs+R2JwUJmXAx1+34Kz67cP9hSVZNkQ=="
},
"payments:recurringAuthorize": {
"href": "https://try.access.worldpay.com/payments/authorizations/recurring/eyJrIjoiazUyOTVhMSIsImxpbmtWZXJzaW9uIjoiMS4wLjAifQ==.R6PzeBs1kC+VT5dtn2WKHquYi:0CPtdsTmoC0CiPjw6CkE+Ujvons6ZVs+R2JwUJmXAx1+34Kz67cP9hSVZNkQ=="
},
"tokens:token": {
"href": "https://access.worldpay.com/tokens/linkData"
},
"curies": [{
"name": "payments",
"href": "https://try.access.worldpay.com/rels/payments/{rel}",
"templated": true
}]
}
}
{
"outcome": "refused",
"description": "do not honour",
"code": "5",
"riskFactors": [{
"risk": "not_checked",
"detail": "postcode",
"type": "avs"
},
{
"risk": "not_checked",
"detail": "address",
"type": "avs"
}
],
"paymentInstrument": {
"type": "card/network+masked",
"card": {
"number": {
"bin": "444433",
"last4Digits": "1111"
},
"countryCode": "GB",
"brand": "visa",
"fundingType": "debit",
"issuer": {
"name": "VALID_ISSUER"
},
"paymentAccountReference": "somePAR"
}
}
}
You can use the payments:settle
action link to
Next Steps
Make a