Coinflow API

The Coinflow REST API for card / ACH / crypto checkout, tokenization, subscriptions, marketplace onboarding, refunds, withdrawals/payouts, and webhooks. 170 operations across 14 tags.

OpenAPI Specification

coinflow-openapi-original.json Raw ↑
{"openapi":"3.1.0","info":{"title":"API Reference","version":"1.0.0"},"paths":{"/auth":{"get":{"operationId":"get-message","summary":"Get Message","description":"Get the message for the user's wallet to sign.","tags":["authentication"],"parameters":[{"name":"x-coinflow-auth-wallet","in":"header","description":"The web3 wallet of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetMessageToSignResponse"}}}}}}},"/auth/session-key":{"get":{"operationId":"get-session-key","summary":"Get Session Key","description":"Get an authentication session key","tags":["authentication"],"parameters":[{"name":"x-coinflow-auth-user-id","in":"header","description":"The external identifier of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSessionKeyResponse"}}}}}}},"/auth/verify":{"get":{"operationId":"verify-token","summary":"Verify Token","description":"Verify a token is valid and is not expired","tags":["authentication"],"parameters":[{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Successful response"}}}},"/tokenize/associate-cvv":{"post":{"operationId":"associate-cvv","summary":"Associate CVV","description":"Tokenize Card PAN & Optionally CVV in a server to server integration.\n\nIn order to gain access to this endpoint your company must have PCI-DSS\ncertification, and provide that to your Coinflow Integrations Representative.","tags":["cardTokenization"],"parameters":[{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"tx-token-scheme","in":"header","required":true,"schema":{"$ref":"#/components/schemas/TokenizeAssociateCvvPostParametersTxTokenScheme"}},{"name":"tx-tokenex-id","in":"header","description":"In the Sandbox Environment pass: 4582952996979143\nIn Production pass: 2781185452603874","required":true,"schema":{"type":"string"}},{"name":"tx-apikey","in":"header","description":"Contact your Coinflow integrations representative to receive this value","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerToServerTokenizationResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerToServerAssociatedCvvRequest"}}}}}},"/tokenize":{"post":{"operationId":"tokenize","summary":"Tokenize Card and CVV","description":"Tokenize Card PAN & Optionally CVV in a server to server integration.\n\nIn order to gain access to this endpoint your company must have PCI-DSS\ncertification, and provide that to your Coinflow Integrations Representative.","tags":["cardTokenization"],"parameters":[{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"tx-token-scheme","in":"header","required":true,"schema":{"$ref":"#/components/schemas/TokenizePostParametersTxTokenScheme"}},{"name":"tx-tokenex-id","in":"header","description":"In the Sandbox Environment pass: 4582952996979143\nIn Production pass: 2781185452603874","required":true,"schema":{"type":"string"}},{"name":"tx-apikey","in":"header","description":"Contact your Coinflow integrations representative to receive this value","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerToServerTokenizationResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerToServerTokenizationRequest"}}}}}},"/tokenize/card-only":{"post":{"operationId":"card-only","summary":"Tokenize Card Only","description":"Tokenize Card PAN without CVV in a server to server integration.\n\nIn order to gain access to this endpoint your company must have PCI-DSS\ncertification, and provide that to your Coinflow Integrations Representative.","tags":["cardTokenization"],"parameters":[{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"tx-token-scheme","in":"header","required":true,"schema":{"$ref":"#/components/schemas/TokenizeCardOnlyPostParametersTxTokenScheme"}},{"name":"tx-tokenex-id","in":"header","description":"In the Sandbox Environment pass: 4582952996979143\nIn Production pass: 2781185452603874","required":true,"schema":{"type":"string"}},{"name":"tx-apikey","in":"header","description":"Contact your Coinflow integrations representative to receive this value","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerToServerTokenizationResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServerToServerCardOnlyRequest"}}}}}},"/checkout/ach/{merchantId}":{"post":{"operationId":"ach-checkout","summary":"ACH Checkout","description":"Processes a checkout via ACH.","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"428":{"description":"User must re-verify account","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationRequiredResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AchCheckoutArgs"}}}}}},"/checkout/apa/{merchantId}":{"post":{"operationId":"apa-checkout","summary":"APA Checkout","description":"Initiates the checkout for an APA Payment","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_ApaCheckout_Response_200"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pick_VerificationRequiredResponse.verification-or-verificationLink_"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApaCheckoutArgs"}}}}}},"/checkout/v2/apple-pay/{merchantId}":{"post":{"operationId":"apple-pay","summary":"Apple Pay Checkout","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"402":{"description":"ApplePay unavailable","content":{"application/json":{"schema":{"description":"Any type"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationRequiredResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApplePayCheckoutArgs"}}}}}},"/checkout/apple-pay/validatemerchant":{"get":{"operationId":"validate-merchant","summary":"Apple Pay Validate Merchant","tags":["checkout"],"parameters":[{"name":"domainName","in":"query","description":"- Top level domain that the Apple Pay Button is associated with","required":true,"schema":{"type":"string"}},{"name":"merchantId","in":"query","description":"The merchant ID associated with this request, required\nif you are utilizing custom certificates\n- The Merchant ID of the Merchant","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"description":"Any type"}}}}}}},"/checkout/capture":{"post":{"operationId":"capture-payment","summary":"Capture Payment","description":"If a payment has been created with authOnly=true, capture it using this endpoint.","tags":["checkout"],"parameters":[{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_CapturePayment_Response_200"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CapturePaymentRequest"}}}}}},"/checkout/card/{merchantId}":{"post":{"operationId":"card-checkout","summary":"Card Checkout","description":"Processes a checkout via credit card information, will tokenize and save the card for reuse by the customer in the future.","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","description":"- (Optional) If you are using Coinflow Chargeback Protection, you must pass the device id of the customer's device.","required":false,"schema":{"type":"string"}},{"name":"x-coinflow-client-ip","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CardCheckoutResponse"}}}},"412":{"description":"Challenge required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeFields"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pick_VerificationRequiredResponse.verification-or-verificationLink_"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CardCheckoutArgs"}}}}}},"/checkout/card-on-file-authorized":{"post":{"operationId":"card-on-file-authorized","summary":"Card on File Authorized","description":"Checks if a user is authorized for card on file transactions with this card.\n\nIt is recommended to call this endpoint to confirm card on file transactions can be performed with a card before attempting any session (such as an auction) involving card on file transactions.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-user-id","in":"header","description":"The external identifier of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","required":false,"schema":{"type":"string"}},{"name":"x-coinflow-client-ip","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_CardOnFileAuthorized_Response_200"}}}},"403":{"description":"Card on file not enabled","content":{"application/json":{"schema":{"description":"Any type"}}}},"410":{"description":"Validation for this card has expired. Revalidate the CVV for this card, and make a new purchase using the /api/checkout/card/token in order to begin using this endpoint again.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevalidateCVVFields"}}}},"412":{"description":"3DS Challenge required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeFields"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"token":{"type":"string"}},"required":["token"]}}}}}},"/checkout/card-on-file":{"post":{"operationId":"card-on-file-checkout","summary":"Card On File Checkout","description":"Processes a Card On File Transaction using a saved card from a previous Customer Initiated Transaction (CIT).\n\nThis endpoint can only be used if the customer is actively involved\nin the purchase flow and has explicitly granted their authorization\nto charge their card.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-user-id","in":"header","description":"The external identifier of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","required":false,"schema":{"type":"string"}},{"name":"x-coinflow-client-ip","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"403":{"description":"Card on file not enabled","content":{"application/json":{"schema":{"description":"Any type"}}}},"410":{"description":"Validation for this card has expired. Revalidate the CVV for this card, and make a new purchase using the /api/checkout/card/token in order to begin using this endpoint again.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevalidateCVVFields"}}}},"412":{"description":"3DS Challenge required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeFields"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CardOnFileCheckoutArgs"}}}}}},"/checkout/cashapp/{merchantId}":{"post":{"operationId":"cash-app-checkout","summary":"Cash App Checkout","description":"Initiates the checkout for a Cash App Payment","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","description":"- (Optional) If you are using Coinflow Chargeback Protection, you must pass the device id of the customer's device.","required":false,"schema":{"type":"string"}},{"name":"x-coinflow-client-ip","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_CashAppCheckout_Response_200"}}}},"412":{"description":"Challenge required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeFields"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pick_VerificationRequiredResponse.verification-or-verificationLink_"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CashAppCheckoutArgs"}}}}}},"/checkout/pix":{"post":{"operationId":"create-pix-payment","summary":"Create Pix Payment","description":"Initiates a Pix payment order. Returns a BR code used to pay the order. Must be paid before the returned expiration date (5 minutes).","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PixCheckoutResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PixCheckoutArgs"}}}}}},"/checkout/crypto":{"post":{"operationId":"crypto-checkout-headless","summary":"Crypto Payin","description":"Initiates a payment where the customer is paying with Crypto","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-user-id","in":"header","description":"The external identifier of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HeadlessCheckoutSession"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CryptoHeadlessCheckoutArgs"}}}}},"get":{"operationId":"get-supported-chains-and-tokens-for-merchant","summary":"Get supported chains and tokens","description":"Get the supported chains and tokens for crypto payin w/ merchant settings","tags":["checkout"],"parameters":[{"name":"subtotalCents","in":"query","description":"- (Optional) - include parameter to receive quoted fee in response","required":false,"schema":{"type":"number","format":"double"}},{"name":"subtotalCurrency","in":"query","description":"- (Optional) - include parameter if subtotal is not USD","required":false,"schema":{"$ref":"#/components/schemas/Currency"}},{"name":"tier","in":"query","description":"- (Optional) - filter tokens by fee tier","required":false,"schema":{"$ref":"#/components/schemas/CryptoTier"}},{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupportedChainTokenCombos"}}}}}}},"/checkout/jwt-token":{"post":{"operationId":"get-checkout-jwt-token","summary":"Get Checkout Jwt Token","description":"Gets a Checkout Jwt Token for a purchase\n\nCheckout JWT tokens ensure:\n1. The arguments of the purchase cannot be manipulated\n2. The checkout JWT is only valid for a single purchase\n3. The arguments of the purchase are encrypted to be hidden from the user\n (webhook info, chargebackProtectionData, etc...)","tags":["checkout"],"parameters":[{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_GetCheckoutJwtToken_Response_200"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCheckoutLinkArgs"}}}}}},"/checkout/link":{"post":{"operationId":"get-checkout-link","summary":"Get Checkout Link","description":"Gets a checkout link for the UserID that can be embedded in vanilla iframe\nor the user can be redirected to","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-user-id","in":"header","description":"The external identifier of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-submerchant-id","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_GetCheckoutLink_Response_200"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetCheckoutLinkArgs"}}}}}},"/checkout/destination-auth-key":{"post":{"operationId":"get-destination-auth-key","summary":"Get Destination Auth Key","description":"If your merchant account is settling USDC to an account OTHER than\nthe one defined in your settlement settings, you can utilize this\nendpoint to get a destinationAuthKey which can be passed into the\ncheckout endpoints which will settle USDC to the account which\nis passed into this endpoint.","tags":["checkout"],"parameters":[{"name":"Authorization","in":"header","description":"The API key of the merchant - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Checkout_GetDestinationAuthKey_Response_200"}}}}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"blockchain":{"$ref":"#/components/schemas/Blockchain"},"destination":{"type":"string"}},"required":["blockchain","destination"]}}}}}},"/checkout/fees":{"post":{"operationId":"get-fees","summary":"Get Interchange Fees","description":"Gets the breakdown of possible fees\n\nIt is unlikely you will be calling this endpoint. Only call if you want to see the fee breakdown for all payment methods ex: Debit vs. Credit. If you are trying to display\nall possible fees (including gas) broken down by line item and the final total amount, call the \"Get Totals\" endpoint.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Partial_Record_PaymentMethods.FeeOption-Array-or-FeeDetail-or-CurrencyCents__"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeeDetailRequest"}}}}}},"/checkout/totals/{merchantId}":{"post":{"operationId":"get-totals","summary":"Get Totals","description":"Gets the fees, quotes, and totals for a particular checkout.","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Record_PaymentMethods.TotalsResponseSettlement-or-undefined_"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetTotalsBody"}}}}}},"/checkout/evm/usdc-authorization":{"post":{"operationId":"get-usdc-authorization-message","summary":"Get USDC Authorization Message (EVM only)","description":"Gets the USDC authorization message to be signed by the customer for dual-source payments.\nThe signed message allows the customer's USDC to be used alongside credit card payment.\n\nThis is only necessary for EVM chains when using customer USDC + credit card payment.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetUsdcAuthorizationResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetUsdcAuthorizationBody"}}}}}},"/checkout/google-pay/{merchantId}":{"post":{"operationId":"google-pay","summary":"Google Pay Checkout","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"402":{"description":"GooglePay unavailable","content":{"application/json":{"schema":{"description":"Any type"}}}},"412":{"description":"Challenge required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeFields"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationRequiredResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GooglePayCheckoutArgs"}}}}}},"/checkout/interac":{"post":{"operationId":"interac-checkout","summary":"Interac e-Transfer Checkout (New Contact)","description":"Initiates an Interac e-Transfer payin with a new contact. Returns the paymentId.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InteracCheckoutResponse"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationRequiredResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NewInteracCheckoutArgs"}}}}}},"/checkout/interac/token":{"post":{"operationId":"interac-token-checkout","summary":"Interac e-Transfer Checkout (Saved Contact)","description":"Initiates an Interac e-Transfer payin with a previously saved contact.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InteracCheckoutResponse"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationRequiredResponse"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedTokenCheckoutArgs"}}}}}},"/checkout/merchant-initiated-transaction":{"post":{"operationId":"merchant-initiated-transaction","summary":"Merchant Initiated Transaction","description":"Processes a Merchant Initated Transaction using a saved card from a previous Customer Initiated Transaction (CIT) authorized for this purpose.\n\nThis endpoint can only be used if the customer has once before authorized their card to be charged on your platform.\nAn example flow would be a usage based billing paradigm. A customer would add their card and perform a zero authorization transaction which would then allow this card to be charged in subsequent merchant initiated transactions.","tags":["checkout"],"parameters":[{"name":"x-coinflow-auth-user-id","in":"header","description":"The external identifier of the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutResponse"}}}},"403":{"description":"Merchant Initiated Transactions not enabled","content":{"application/json":{"schema":{"description":"Any type"}}}},"410":{"description":"Validation for this card has expired. Revalidate the CVV for this card, and make a new purchase using the /api/checkout/card/token in order to begin using this endpoint again.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RevalidateCVVFields"}}}},"429":{"description":"Reached Max Number of Transactions In Period","content":{"application/json":{"schema":{"description":"Any type"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MerchantInitiatedTransactionArgs"}}}}}},"/checkout/paypal/{merchantId}":{"post":{"operationId":"new-pay-pal-checkout","summary":"PayPal New Checkout","description":"Initiates the checkout for PayPal payment with a new account","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","description":"- (Optional) If you are using Coinflow Chargeback Protection, you must pass the device id of the customer's device.","required":false,"schema":{"type":"string"}},{"name":"x-coinflow-client-ip","in":"header","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PayPalCheckoutResponse"}}}},"412":{"description":"Challenge required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ChallengeFields"}}}},"423":{"description":"Customer is Blocked","content":{"application/json":{"schema":{"description":"Any type"}}}},"451":{"description":"Must Complete Additional Verification","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Pick_VerificationRequiredResponse.verification-or-verificationLink_"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NewPayPalCheckoutArgs"}}}}}},"/checkout/paypal/token/{merchantId}":{"post":{"operationId":"saved-pay-pal-checkout","summary":"PayPal Saved Checkout","description":"Initiates the checkout for PayPal payment with a saved account","tags":["checkout"],"parameters":[{"name":"merchantId","in":"path","required":true,"schema":{"type":"string"}},{"name":"x-coinflow-auth-session-key","in":"header","description":"The session key generated for the end user - see https://docs.coinflow.cash/api-reference/api-reference/authentication/get-session-key","required":true,"schema":{"type":"string"}},{"name":"x-device-id","in":"header","description":"- (Optional) If you are using Coinflow Chargeback Protection, you must pass the device id of the customer's device.","required":false,"schema":{"type":"stri

# --- truncated at 32 KB (640 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/coinflow/refs/heads/main/openapi/coinflow-openapi-original.json