Card Checkout

Processes a checkout via credit card information, will tokenize and save the card for reuse by the customer in the future.

Authentication

x-coinflow-auth-session-keystring
OR
x-coinflow-auth-walletstring
x-coinflow-auth-blockchainstring

Path parameters

merchantIdstringRequired

Headers

x-device-idstringOptional
- (Optional) If you are using Coinflow Chargeback Protection, you must pass the device id of the customer's device.
x-coinflow-client-ipstringOptional

Request

This endpoint expects an object.
subtotalobjectRequired
cardobjectRequired

Credit card information. Always pass address unless explicitly told that you may not

webhookInfoanyOptional
chargebackProtectionDatalist of any or objectsOptional

Purchase *

customerInfoobjectOptional
settlementTypeenumOptional
Allowed values:
rentobjectOptional

(Solana only) if your transaction requires a known amount of Rent to be paid, you can pass it here.

redemptionCheckbooleanOptional

(Solana only) If a transaction involved in the purchase, should payment be checked for redemption

transactionDataobjectOptional

(EVM only) if you want to execute an EVM transaction on a successful purchase, you can pass a transaction request here.

Gas fees for the transaction will be automatically calculated and added to the total charged to the customer. Optionally the merchant can opt to pay for these gas fees.

authOnlybooleanOptional

Only authorize the purchase. This will not actually capture the payment.(default: false)

feePercentagedoubleOptional0-100

If this purchase is for a seller/submerchant where the marketplace takes a fee, this is the % fee which is taken from the subtotal amount.

fixedFeeobjectOptional
jwtTokenstringOptional
This is a token encoding the parameters for the request. Allows purchase parameters to be verified to prevent manipulation when the checkout page is presented to the user.
threeDsChallengePreferenceenumOptional
Allowed values:
destinationAuthKeystringOptional
If utilizing USDC settlement to addresses other than your main merchant settlement address. Utilize this destinationAuthKey which is a JWT encoded with the information for which address to send the USDC to.
customerUsdcTransferDataobjectOptional

Customer signed USDC transferWithAuthorization data for dual-source payments Used for combined USDC + Credit Card payments on EVM chains

authentication3DSobjectOptional
presentmentenumOptional
accountFundingTransactionobjectOptional
Used for Account Funding Transactions
statementDescriptorstringOptional
If the bank supports dynamic descriptors, this will appear on the customer's statement.
saveCardbooleanOptional
Save the new card? If not passed in, will default to true

Response

Ok
paymentIdstring
The ID of the payment that was created.

Errors