BillingInfo object. The paymentType field selects the kind of payment, and a type-specific sub-object (such as card, check, or purchaseOrder) carries the details for that type.
For where these objects appear in a request and the actions you can perform against a payment, see Payment Actions and the Commerce/OMS API Developer Guide.
Supported Payment Types
ThepaymentType field accepts one of the following string values. Values are case-sensitive and must be sent exactly as shown.
Each payment type must also be enabled and assigned to a gateway for the site before it can be used. See Payment Types for the admin configuration steps.
The BillingInfo Wrapper
BillingInfo is the outer object that wraps every payment. The fields below apply to all payment types; the type-specific sub-objects are described in the sections that follow.
The billingContact Object
billingContact carries the payer’s name and billing address. It is shared by all payment types.
Per-Type Request Formats
Each section below shows the type-specific sub-object schema and a completeBillingInfo example payload. The billingContact is abbreviated as { ... } in the examples; populate it as shown in The billingContact Object.
CreditCard
Card payments use thecard sub-object. The card is tokenized by the payment gateway, so paymentServiceCardId holds the gateway card token rather than a raw card number.
Check
Check by mail uses thecheck sub-object.
StoreCredit
Store credit is applied with thestoreCreditCode and storeCreditType fields on BillingInfo directly. There is no nested sub-object.
PurchaseOrder
B2B purchase orders use thepurchaseOrder sub-object. The purchase order is authorized against the customer account’s configured credit limit, so the payment method must be enabled on both the site and the individual customer account.
GiftCard
Gift cards are processed through a payment gateway. TheBillingInfo sets paymentType to GiftCard, and the gateway gift card details are supplied through the payment’s gatewayGiftCard object.
The gatewayGiftCard object has these fields:
gatewayGiftCard on the payment:
Gift card behavior, including whether refunds and credits are issued to the existing card or a new one, is configured per site. See Gateway Gift Cards.
Token
Digital wallet and third-party tokenized payments (for example, Apple Pay) use thetoken sub-object.
For some third-party sources, the transaction ID is carried on
BillingInfo.externalTransactionId (for example, Visa Checkout or Amazon Pay) rather than in the token object.PaypalExpress
PayPal Express uses a redirect flow rather than a sub-object onBillingInfo. The BillingInfo sets paymentType to PaypalExpress, and the redirect URLs are supplied on the payment action through returnUrl and cancelUrl. The billingContact is typically populated after PayPal redirects the shopper back to your site.
Where BillingInfo Appears in a Request
BillingInfo is submitted in a few different places depending on the operation:
- Applying a payment to an order or checkout: wrapped in a
PaymentActionasnewBillingInfo, alongside theactionNameandamount. See Payment Actions. - Importing a completed order: included on each entry of the order’s
paymentsarray and on the order’sbillingInfo. See the Commerce/OMS API Developer Guide.
actionName field on a payment action accepts one of these values: CreatePayment, AuthorizePayment, AuthAndCapture, CapturePayment, CreditPayment, DeclinePayment, RequestCheck, VoidPayment, Rollback, and AcknowledgeError. To create and authorize a new payment from a BillingInfo, use CreatePayment.
A minimal payment action that applies a credit card payment looks like this:
Related Guides
- Payments: Conceptual Guide — how the payment subsystem authorizes, captures, voids, and refunds transactions.
- Payment Overview — the payment lifecycle within order management.
- Payment Types — enabling and configuring each payment type per site.
- Payment Actions — voiding, capturing, crediting, and refunding payments.
- Commerce/OMS API Developer Guide — importing completed orders with pre-authorized payments.

