Skip to content

Last updated: 17 November 2025 | Change log

A pre-paid, cash-based online payment method.

Note

Make yourself familiar with our API principles to ensure a resilient integration.

Product overview

Feature summary

Payment typeCountryRecurringReversalsPartial reversalsDispute
pre-paidAustria, Belgium, Cyprus, Czech Republic, Denmark, France, Germany, Greece, Ireland, Italy, Liechtenstein, Luxembourg, Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden, Switzerland, United Kingdom
  • Minimum Transaction Value: 1.00 GBP
  • Maximum Transaction Value: 1.000 EUR

Acceptance currencies

CurrencyCurrency codes
Swiss FrancCHF
Czech KorunaCZK
Danish KroneDKK
EuroEUR
Romanian LeuRON
Pound SterlingGBP
Norwegian KroneNOK
Polish złotyPLN
Swedish KronaSEK
US dollarUSD
Note

Payments made in RON and NOK are settled in EUR. Payments made with any other acceptance currency are settled in the same currency.

Get started

Use our API reference and set your headers.

Request

POST https://try.access.worldpay.com/apmPayments

Example request

application/json
{ "transactionReference": "Memory265-13/08/1876", "merchant": { "entity": "default" }, "instruction": { "method": "paysafecard", "value": { "amount": 25, "currency": "GBP" }, "narrative": { "line1": "Mind Palace" }, "paymentInstrument": { "type": "direct", "country": "GB" }, "resultUrls": { "pending": "https://worldpay.com/pending", "success": "https://worldpay.com/success", "cancel": "https://worldpay.com/cancel" }, "customer": { "email": "shopper@worldpay.com" } } }

Parameters

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. Bizum specific regex [a-zA-Z0-9]{4,12}.

merchantobject(MerchantV2)required
merchant.​entitystring[ 3 .. 32 ] characters^([a-zA-Z0-9\- ]*)$required

Used to route the request in Access Worldpay, created as part of on-boarding.

Example: "default"
instructionobject(InstructionV2)required

Object that contains the payment type and details.

instruction.​methodstringrequired

Type of payment method

Value"ach"
Discriminator
instruction.​valueobject(Value)required

The value of the payment.

instruction.​value.​amountinteger(int64)[ 1 .. 2147483647 ]required

The amount in the lowest denomination of the currency e.g. pennies for GBP, cents for USD.

Example: 12
instruction.​value.​currencystringrequired
Enum"AED""AFN""ANG""AOA""ARS""AUD""AWG""AZN""BAM""BBD"
instruction.​narrativeobject(NarrativeBase)required
instruction.​narrative.​line1string[ 1 .. 24 ] characters^[a-zA-Z0-9-., ]*$required

The description shown on your customer's bank statement for the payment.

Example: "MindPalace"
instruction.​paymentInstrumentobject(AchEftPaymentInstrumentV2)required
instruction.​paymentInstrument.​typestringrequired

The type of instrument.

Value"direct"
instruction.​paymentInstrument.​accountTypestringrequired

Account type.

Enum"checking""savings""corporate""corporateSavings"
Example: "checking"
instruction.​paymentInstrument.​accountNumberstring[ 1 .. 17 ] characters^[0-9]*$required

Account number of direct debit account.

Example: "123456789"
instruction.​paymentInstrument.​routingNumberstring= 9 characters^[0-9]*$required

Routing number of direct debit account.

Example: "123456789"
instruction.​paymentInstrument.​checkNumberstring[ 1 .. 15 ] characters^[0-9]*$

Check number of the direct debit account.

Example: "123456789"
instruction.​paymentInstrument.​companyNamestring[ 1 .. 40 ] characters^[0-9]*$

Company name if a corporate account.

Example: "123456789"
instruction.​paymentInstrument.​billingAddressobject(AchEftBillingAddress)required
instruction.​paymentInstrument.​billingAddress.​address1string[ 1 .. 80 ] characters
instruction.​paymentInstrument.​billingAddress.​address2string[ 1 .. 80 ] characters
instruction.​paymentInstrument.​billingAddress.​address3string[ 1 .. 80 ] characters
instruction.​paymentInstrument.​billingAddress.​citystring[ 1 .. 50 ] characters

City.

instruction.​paymentInstrument.​billingAddress.​countryCodestring
Enum"AD""AE""AF""AG""AI""AL""AM""AN""AO""AQ"
instruction.​paymentInstrument.​billingAddress.​postalCodestring[ 1 .. 15 ] characters

Postal code.

instruction.​paymentInstrument.​billingAddress.​statestring[ 1 .. 30 ] characters

State code of the billing address in ISO 3166-2 format.

Example: "US-OH"
instruction.​customerobject(CustomerDetailsAch)required
instruction.​customer.​firstNamestring[ 1 .. 22 ] charactersrequired

Your customer's first name.

instruction.​customer.​lastNamestring[ 1 .. 22 ] charactersrequired

Your customer's last name.

instruction.​customer.​customerIdstring<= 15 characters^[a-zA-Z0-9]*$

Your unique reference for the customer so that the 'pay faster next time' function can be used during checkout. This allows the shoppers chosen bank to be stored for their next payment.

Example: "44528abcd"
instruction.​customer.​emailstring

The customer's e-mail address.

Example: "customer@worldpay.com"

Response

Example response

{
    "paymentInstrument": {
        "method": "paysafecard",
        "type": "direct"
    },
    "paymentId": "eyJrIjoiYXBtLXNlcnZpY2UtbG9jYWwiLCJsaW5rVmVyc2lvbiI6IjYuMC4wIn0=.BnnxxcMle38OazhwbF8J+4rtJi8CAq:Y3zUOn1dw6VWfvx:PHL5L0S+5ara5vz6ouV5yBmVUQCiSwQjs+1x5qJIJxAKWMWc2Mlb1doricEYlzsZIRIGCflvnYu1Ns8g1S0+66n6wCELiB9OHfX7cdDZM8QaH19DiFbmMAchPSTy3YhKhjHb7eU81eSTnCsB+em66NOYspir3PJsMwGsI7DgQG6H8RA6ud004Gi7UbmmWuCYako2x2qLNAoCkV0HeDe9tVGUUJ8RPRm2jMHH20eHV:lzKfpwhCpCj20XtN:CPsSI2e:sopgZlkbmyvzDIeWSIThE3J1pPGsapqefRFo:b1Rfx8XquR8u:dBYr5a70wYkewsxOvrYXmLip3Fvy7rdfTE9SB:F5xmui5ij57ItzoUGQqmhdlJEFtZOvawnk19rQ8+2IHhZzeukzTZ41bET6DfydrjX20ywVxbq2Jw==",
    "lastEvent": "pending",
    "_links": {
        "self": {
            "href": "https://try.access.worldpay.com/apmPayments/eyJrIjoiYXBtLXNlcnZpY2UtbG9jYWwiLCJsaW5rVmVyc2lvbiI6IjYuMC4wIn0=.BnnxxcMle38OazhwbF8J+4rtJi8CAq:Y3zUOn1dw6VWfvx:PHL5L0S+5ara5vz6ouV5yBmVUQCiSwQjs+1x5qJIJxAKWMWc2Mlb1doricEYlzsZIRIGCflvnYu1Ns8g1S0+66n6wCELiB9OHfX7cdDZM8QaH19DiFbmMAchPSTy3YhKhjHb7eU81eSTnCsB+em66NOYspir3PJsMwGsI7DgQG6H8RA6ud004Gi7UbmmWuCYako2x2qLNAoCkV0HeDe9tVGUUJ8RPRm2jMHH20eHV:lzKfpwhCpCj20XtN:CPsSI2e:sopgZlkbmyvzDIeWSIThE3J1pPGsapqefRFo:b1Rfx8XquR8u:dBYr5a70wYkewsxOvrYXmLip3Fvy7rdfTE9SB:F5xmui5ij57ItzoUGQqmhdlJEFtZOvawnk19rQ8+2IHhZzeukzTZ41bET6DfydrjX20ywVxbq2Jw=="
        }
    },
    "_actions": { },
    "redirect": "http://secure-test.worldpay.com/redirect?tokenId=dc9c308b-d56b-4823-968e-0f94b20d6b73",
    "commandId": "cmdOl8x_MaK4TxcF3exdl5cL0"
}

Schema

paymentIdstring

The identifier of the payment resource.

lastEventstring
Enum"authorized""cancelFailed""cancelled""cancelRequested""sentForSettlement""sentForAuthorization""settlementFailed""chargebackReversed""chargedBack""disputeExpired"
_linksobject(Links)

Links to resources related to the request.

_actionsobject(Actions)
redirectstring

The URL to redirect your customer to.

paymentInstrumentobject(PaymentInstrumentResponse)
commandIdstring

An action ID generated by us identifying a single merchant interaction

Example: "cmdYNdIHBPJwbkjLiykzTx0"

Errors

Check out our API reference for more responses or error codes.


Next steps

Manage your PaysafeCard payment