Skip to content

Payments

Pay for bookings using a card or bank account, and view payment status and history.

warn Bookings usually expire within 1 hour so you'll need to make your payment before the expiry date

Pay for a Booking

Request

A payment is an attempt to pay for the booking, which will confirm the booking for the user and enable them to get their tickets.

Security
OAuth2(Required scopes: read)
Path
bookingIdstring, (uuid)required

The ID of the booking to pay for.

Example:1725ff48-ab45-4bb5-9d02-88745177dedb
Bodyapplication/json
amountnumber, > 0

Amount intended to be collected by this payment. A positive decimal figure describing the amount to be collected.

currencystring

Three-letter ISO currency code, in lowercase.

Enum:"bam""bgn""chf""eur""gbp""nok""sek""try"
sourceCard (object) or Bank Account (object)
Any of:

A card (debit or credit) to take payment from.

curl -i -X POST \
  https://innovario.apishowdown.com/_mock/catalog/api-showdown/api-hub/train-travel/openapi/bookings/1725ff48-ab45-4bb5-9d02-88745177dedb/payment \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "amount": 49.99,
    "currency": "gbp",
    "source": {
      "object": "card",
      "name": "J. Doe",
      "number": "4242424242424242",
      "cvc": 123,
      "exp_month": 12,
      "exp_year": 2025,
      "address_line1": "123 Fake Street",
      "address_line2": "4th Floor",
      "address_city": "London",
      "address_country": "gb",
      "address_post_code": "N12 9XX"
    }
  }'

Responses

Payment successful

Headers
RateLimitstring

The RateLimit header communicates quota policies. It contains a limit to convey the expiring limit, remaining to convey the remaining quota units, and reset to convey the time window reset time.

Bodyapplication/json
idstring, (uuid)read-only

Unique identifier for the payment. This will be a unique identifier for the payment, and is used to reference the payment in other objects.

amountnumber, > 0

Amount intended to be collected by this payment. A positive decimal figure describing the amount to be collected.

currencystring

Three-letter ISO currency code, in lowercase.

Enum:"bam""bgn""chf""eur""gbp""nok""sek""try"
sourceCard (object) or Bank Account (object)
Any of:

A card (debit or credit) to take payment from.

statusstringread-only

The status of the payment, one of pending, succeeded, or failed.

Enum:"pending""succeeded""failed"
Response
{ "id": "2e3b4f5a-6b7c-8d9e-0f1a-2b3c4d5e6f7a", "amount": 49.99, "currency": "gbp", "source": { "object": "card", "name": "J. Doe", "number": "************4242", "cvc": 123, "exp_month": 12, "exp_year": 2025, "address_country": "gb", "address_post_code": "N12 9XX" }, "status": "succeeded", "links": { "booking": "https://api.example.com/bookings/1725ff48-ab45-4bb5-9d02-88745177dedb/payment" } }