openapi: 3.0.3 info: title: API Settings description: >- At BlueSnap, we look at payments a little differently. Our Payment Orchestration Platform helps businesses accept payments globally and is designed to increase revenue and reduces costs. We provide a comprehensive back-end solutions that simplifies the complexity of payments, managing the full process from start to finish. BlueSnap supports payments through multiple sales channels such as online and mobile sales, marketplaces, subscriptions, invoice payments and manual orders through a virtual terminal. And for businesses looking for embedded payments, we offer white-labeled payments for platforms with automated underwriting and onboarding that supports marketplaces and split payments. And with one integration and contract, businesses can sell in over 200 geographies with access to local acquiring in 47 countries, 110+ currencies and 100+ global payment types, including popular eWallets, automated accounts receivable, world-class fraud protection and chargeback management, built-in solutions for regulation and tax compliance, and unified global reporting to help businesses grow. With a US headquarters in Waltham, MA, and EU headquarters in Dublin, Ireland, BlueSnap is backed by world-class private equity investors including Great Hill Partners and Parthenon Capital Partners. Learn more at BlueSnap.com version: 8976-Tools servers: - url: https://sandbox.bluesnap.com/services/2 tags: - name: Transaction - name: Subscription - name: Shopper - name: Plan - name: Vendor - name: Agreement - name: Authorization - name: Reversal paths: /transactions: post: tags: - Authorization summary: Auth Only operationId: Authorization_createTransaction description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/AuthorizationCreateTransactionRequest' responses: '200': description: OK deprecated: false put: tags: - Reversal summary: Auth Reversal operationId: Reversal_authTransaction description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/ReversalAuthTransactionRequest' responses: '200': description: OK deprecated: false /transactions/{transactionId}: get: tags: - Transaction summary: Retrieve operationId: Transaction_getById description: '' parameters: - description: transaction ID received in the response from BlueSnap name: transactionId in: path schema: type: string default: '1011582369' required: true responses: '200': description: OK deprecated: false /alt-transactions: post: tags: - Transaction summary: Create Sofort Transaction operationId: Transaction_createSofortTransaction description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/TransactionCreateSofortTransactionRequest' responses: '200': description: OK deprecated: false put: tags: - Transaction summary: Update PayPal Transaction operationId: Transaction_updatePaypalTransaction description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/TransactionUpdatePaypalTransactionRequest' responses: '200': description: OK deprecated: false /alt-transactions/{transactionId}: get: tags: - Transaction summary: Retrieve SEPA DD Transaction operationId: Transaction_getSepaDd description: '' parameters: - description: transaction ID received in the response from BlueSnap name: transactionId in: path schema: type: string default: '1105235763' required: true responses: '200': description: OK deprecated: false /alt-transactions/resolve: get: tags: - Transaction summary: Retrieve Sofort Transaction operationId: Transaction_getSofortTransaction description: '' parameters: - description: >- Order ID received in the Create Sofort Transaction response from BlueSnap name: orderId in: query required: true schema: type: integer format: int32 default: 140803713 responses: '200': description: OK deprecated: false /agreements/debit/{region}/{type}: post: tags: - Agreement summary: Create Debit Agreement operationId: Agreement_createDebitForAusCan description: for Australia and Canada parameters: - description: 'Represents the country. Possible Values: `au`, `ca`' name: region in: path schema: type: string default: ca required: true - description: >- Represents the mandate type. Possible Values: `onetime`,`recurring`, `ondemand` name: type in: path schema: type: string default: onetime required: true - description: SKU number name: planid in: query schema: type: string - description: the amount which overrides recurring charge name: overriderecurringchargeamount in: query schema: type: string responses: '200': description: OK deprecated: false /agreements/28521: get: tags: - Agreement summary: Get Debit Agreement operationId: Agreement_getDetails description: for Australia and Canada responses: '200': description: OK deprecated: false /agreements/prenotification/1105235763: get: tags: - Agreement summary: Get Pre-Notification Debit Agreement operationId: Agreement_getAusCan description: for Australia and Canada responses: '200': description: OK deprecated: false /alt-transactions/resolve?orderId={orderId}: get: tags: - Transaction summary: Retrieve PayPal Transaction operationId: Transaction_getPaypalTransaction description: '' parameters: - description: order ID received in the response name: orderId in: path required: true schema: type: string default: '5666625' responses: '200': description: OK deprecated: false /batch-transactions: post: tags: - Transaction summary: Create Batch Transaction operationId: Transaction_createBatchTransaction description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/TransactionCreateBatchTransactionRequest' responses: '200': description: OK deprecated: false /batch-transactions/{batchId}: get: tags: - Transaction summary: Retrieve Batch Transaction operationId: Transaction_getBatchTransaction description: '' parameters: - description: batch ID sent in the Create Batch Transaction request name: batchId in: path required: true schema: type: string default: '567890' responses: '200': description: OK deprecated: false /transactions/refund/{transactionId}: post: tags: - Transaction summary: Refund operationId: Transaction_initiateRefund description: '' parameters: - description: >- ID of the transaction to be refunded
Required if not using `merchantTransactionId` name: transactionId in: path schema: type: string default: '1095710747' required: true requestBody: content: application/json: schema: $ref: '#/components/schemas/TransactionInitiateRefundRequest' responses: '200': description: OK deprecated: false /transactions/pending-refund/{transactionId}: delete: tags: - Transaction summary: Cancel Pending Refund operationId: Transaction_cancelPendingRefund description: '' parameters: - description: transactionId received from BlueSnap name: transactionId in: path schema: type: string default: '1109144995' required: true responses: '200': description: OK deprecated: false /vaulted-shoppers: post: tags: - Shopper summary: Create Vaulted Shopper operationId: Shopper_createVaultedShopper description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/ShopperCreateVaultedShopperRequest' responses: '200': description: OK deprecated: false /vaulted-shoppers/{vaultedShopperId}: put: tags: - Shopper summary: Update Vaulted Shopper operationId: Shopper_updateVaultedShopper description: '' parameters: - description: vaultedShopperId received from BlueSnap name: vaultedShopperId in: path schema: type: string default: '40444721' required: true requestBody: content: application/json: schema: $ref: '#/components/schemas/ShopperUpdateVaultedShopperRequest' responses: '200': description: OK deprecated: false get: tags: - Shopper summary: Retrieve Vaulted Shopper operationId: Shopper_get description: '' parameters: - description: vaultedShopperId received from BlueSnap name: vaultedShopperId in: path required: true schema: type: string default: '51008305' responses: '200': description: OK deprecated: false delete: tags: - Shopper summary: Delete Vaulted Shopper operationId: Shopper_deleteVaultedShopper description: '' parameters: - description: vaultedShopperId received from BlueSnap name: vaultedShopperId in: path schema: type: string default: '20769005' required: true responses: '200': description: OK deprecated: false /recurring/plans: post: tags: - Plan summary: Create Plan operationId: Plan_createRecurringPlan description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/PlanCreateRecurringPlanRequest' responses: '200': description: OK deprecated: false /recurring/plans/{planId}: put: tags: - Plan summary: Update Plan operationId: Plan_updateRecurringPlan description: '' parameters: - description: BlueSnap identifier for the plan. name: planId in: path required: true schema: type: integer format: int32 default: 3068869 requestBody: content: application/json: schema: $ref: '#/components/schemas/PlanUpdateRecurringPlanRequest' responses: '200': description: OK deprecated: false get: tags: - Plan summary: Retrieve Specific Plan operationId: Plan_getSpecific description: '' parameters: - description: BlueSnap identifier for the plan. name: planId in: path required: true schema: type: integer format: int32 default: 3068673 responses: '200': description: OK deprecated: false /recurring/plans?{parameters}: get: tags: - Plan summary: Retrieve All Plans operationId: Plan_getAll description: '' parameters: - name: pagesize in: query schema: type: string default: '5' - name: after in: query schema: type: string default: '2185254' - name: gettotal in: query schema: type: boolean default: true - name: fulldescription in: query schema: type: boolean default: false responses: '200': description: OK deprecated: false /recurring/subscriptions: post: tags: - Subscription summary: Create Subscription operationId: Subscription_createNew description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/SubscriptionCreateNewRequest' responses: '200': description: OK deprecated: false /recurring/subscriptions/{subscriptionId}: put: tags: - Subscription summary: Update Subscription operationId: Subscription_updateSubscription description: '' parameters: - description: BlueSnap identifier for the subscription. name: subscriptionId in: path required: true schema: type: integer format: int32 default: 8491543 requestBody: content: application/json: schema: $ref: '#/components/schemas/SubscriptionUpdateSubscriptionRequest' responses: '200': description: OK deprecated: false get: tags: - Subscription summary: Retrieve Specific Subscription operationId: Subscription_getSpecific description: '' parameters: - description: BlueSnap identifier for the subscription. name: subscriptionId in: path required: true schema: type: integer format: int32 default: 55296773 responses: '200': description: OK deprecated: false /recurring/ondemand: post: tags: - Subscription summary: Create Merchant-Managed Subscription operationId: Subscription_createMerchantManagedSubscription description: '' requestBody: content: application/json: schema: $ref: >- #/components/schemas/SubscriptionCreateMerchantManagedSubscriptionRequest responses: '200': description: OK deprecated: false /recurring/ondemand/{subscriptionId}: post: tags: - Subscription summary: Create Merchant-Managed Subscription Charge operationId: Subscription_createMerchantManagedCharge description: '' parameters: - description: BlueSnap identifier for the subscription. name: subscriptionId in: path required: true schema: type: integer format: int32 default: 10543419 requestBody: content: application/json: schema: $ref: >- #/components/schemas/SubscriptionCreateMerchantManagedChargeRequest responses: '200': description: OK deprecated: false /recurring/subscriptions?{parameters}: get: tags: - Subscription summary: Retrieve All Subscriptions operationId: Subscription_listAllSubscriptions description: '' parameters: - name: pagesize in: query schema: type: string default: '5' - name: after in: query schema: type: string default: '34567' - name: gettotal in: query schema: type: boolean default: true - name: fulldescription in: query schema: type: boolean default: false responses: '200': description: OK deprecated: false /recurring/subscriptions/:subscriptionId /charges?{parameters}: get: tags: - Subscription summary: Retrieve All Charges for a Subscription operationId: Subscription_getAllCharges description: '' parameters: - name: pagesize in: query schema: type: string default: '3' - name: after in: query schema: type: string default: '55296773' - name: fulldescription in: query schema: type: boolean default: false responses: '200': description: OK deprecated: false /recurring/subscriptions/:subscriptionId/switch-charge-amount: get: tags: - Subscription summary: Retrieve Subscription Switch Charge Amount operationId: Subscription_getSwitchChargeAmount description: '' parameters: - name: newplanid in: query schema: type: string default: '111111' - name: newquantity in: query schema: type: string default: '2' responses: '200': description: OK deprecated: false /transactions/approval: put: tags: - Transaction summary: Merchant Approve Transaction operationId: Transaction_approveMerchantTransaction description: '' parameters: - description: >- either `transactionid` or `merchanttransactionid` is required
ID of the transaction to be approved/declined name: transactionid in: query schema: type: string default: '38612140' - description: >- Set to `true` to approve the transaction or to `false` to decline the transaction. Default value is `true`. name: approvetransaction in: query schema: type: boolean default: true responses: '200': description: OK deprecated: false /vendors: post: tags: - Vendor summary: Create Vendor operationId: Vendor_create description: '' requestBody: content: application/json: schema: $ref: '#/components/schemas/VendorCreateRequest' responses: '200': description: OK deprecated: false /vendors/{vendorId}: put: tags: - Vendor summary: Update Vendor operationId: Vendor_updateVendor description: '' parameters: - description: BlueSnap identifier for the vendor name: vendorId in: path required: true schema: type: integer format: int32 requestBody: content: application/json: schema: $ref: '#/components/schemas/VendorUpdateVendorRequest' responses: '200': description: OK deprecated: false get: tags: - Vendor summary: Retrieve Vendor operationId: Vendor_getVendor description: '' parameters: - description: BlueSnap identifier for the vendor name: vendorId in: path required: true schema: type: integer format: int32 default: 1198611 responses: '200': description: OK deprecated: false /vendors?{parameters}: get: tags: - Vendor summary: Retrieve All Vendors operationId: Vendor_getAllVendors description: '' parameters: - name: gettotal in: query schema: type: boolean default: true responses: '200': description: OK deprecated: false components: securitySchemes: sec0: type: http in: header name: Authorization x-bearer-format: basic x-default: QVBJXzE2MTk2MjgyMzU0ODkyMDM5MTMzODc0OkFsdG9pZHMxIQ== scheme: basic sec1: type: apiKey name: Authorization in: header x-default: Basic QVBJXzE0NDQ2NTAyMDMxNDQ5NDA0MjIzNjU6QkxVRTEyMw== schemas: AuthorizationCreateTransactionRequest: type: object properties: amount: type: number default: 11 format: float softDescriptor: type: string default: DescTest cardHolderInfo: type: object properties: firstName: type: string default: test first name lastName: type: string default: test last name zip: type: string default: '02453' currency: type: string default: USD creditCard: type: object properties: expirationYear: type: integer default: 2026 format: int32 securityCode: type: integer default: 837 format: int32 expirationMonth: type: string default: '02' cardNumber: type: string default: '4263982640269299' cardTransactionType: type: string default: AUTH_ONLY ReversalAuthTransactionRequest: type: object properties: cardTransactionType: type: string default: AUTH_REVERSAL transactionId: type: integer default: 1011671987 format: int32 TransactionCreateSofortTransactionRequest: type: object properties: ecpTransaction: type: object properties: routingNumber: type: string default: '011075150' accountType: type: string default: CONSUMER_CHECKING accountNumber: type: integer default: 4099999992 format: int32 amount: type: number default: 42 format: float payerInfo: type: object properties: zip: type: string default: '12345' firstName: type: string default: John lastName: type: string default: Doe phone: type: string default: '1234567890' country: type: string default: uk softDescriptor: type: string default: ABC COMPANY currency: type: string default: EUR authorizedByShopper: type: boolean default: true becsDirectDebitTransaction: type: object properties: bsbNumber: type: string default: '980201' accountNumber: type: string default: '9990000001' accountName: type: string default: Boris Britva financialInstitution: type: string default: financialInstitution branchName: type: string default: branchName agreementId: type: integer default: 81 format: int32 idealTransaction: type: object properties: returnUrl: type: string default: http://www.returnURL.com localBankTransferTransaction: description: empty object type: object properties: '{}': type: string paypalTransaction: type: object properties: cancelUrl: type: string default: http://www.cancelURL.com returnUrl: type: string default: http://www.returnURL.com transactionType: type: string default: SET_ORDER acssDirectDebitTransaction: type: object properties: routingNumber: type: string default: '001004820' accountNumber: type: string default: '9990000001' accountType: type: string default: PERSONAL agreementId: type: integer default: 87 format: int32 sepaDirectDebitTransaction: type: object properties: iban: type: string default: DE09100100101234567893 sofortTransaction: type: object properties: returnUrl: type: string default: http://www.returnURL.com TransactionUpdatePaypalTransactionRequest: type: object properties: amount: type: number default: 105 format: float currency: type: string default: USD paypalTransaction: type: object properties: orderId: type: string default: '7078033' transactionType: type: string default: DO_ORDER TransactionCreateBatchTransactionRequest: type: object properties: batchTransaction: type: object properties: batchId: type: string default: '567890' callbackUrl: type: string default: http://example.com/batch_callback cardTransaction: type: array items: properties: cardTransactionType: type: string default: AUTH_CAPTURE merchantTransactionId: type: string default: '566' amount: type: string default: '20.00' currency: type: string default: USD cardHolderInfo: type: object properties: firstName: type: string default: test first name lastName: type: string default: test last name zip: type: string default: '02453' creditCard: type: object properties: cardNumber: type: string default: '4263982640269299' expirationMonth: type: string default: '02' expirationYear: type: string default: '2023' '': type: string type: object TransactionInitiateRefundRequest: type: object properties: reason: type: string default: 'Refund for order #1992' cancelSubscriptions: type: boolean default: false transactionMetaData: type: object properties: metaData: type: array items: properties: metaValue: type: string default: 1552,8832 metaKey: type: string default: refundedItems metaDescription: type: string default: Refunded Items type: object ShopperCreateVaultedShopperRequest: type: object properties: paymentSources: type: object properties: creditCardInfo: type: array items: properties: creditCard: type: object properties: expirationYear: type: integer default: 2023 format: int32 securityCode: type: string default: '837' expirationMonth: type: integer default: 2 format: int32 cardNumber: type: string default: '4263982640269299' type: object firstName: type: string default: FirstName lastName: type: string default: LastName ShopperUpdateVaultedShopperRequest: type: object properties: paymentSources: type: object properties: creditCardInfo: type: array items: properties: creditCard: type: object properties: expirationYear: type: integer default: 2023 format: int32 securityCode: type: string default: '837' expirationMonth: type: integer default: 2 format: int32 cardNumber: type: string default: '4263982640269299' type: object firstName: type: string default: FirstName lastName: type: string default: LastName PlanCreateRecurringPlanRequest: type: object properties: chargeFrequency: type: string default: MONTHLY gracePeriodDays: type: integer default: 10 format: int32 trialPeriodDays: type: integer default: 14 format: int32 initialChargeAmount: type: integer default: 100 format: int32 name: type: string default: Gold Plan currency: type: string default: USD maxNumberOfCharges: type: integer default: 12 format: int32 recurringChargeAmount: type: number default: 29.99 format: float chargeOnPlanSwitch: type: boolean default: true PlanUpdateRecurringPlanRequest: type: object properties: chargeFrequency: type: string default: MONTHLY trialPeriodDays: type: string default: '7' initialChargeAmount: type: string default: '30' name: type: string default: Gold Plan currency: type: string default: USD recurringChargeAmount: type: string default: '29.99' SubscriptionCreateNewRequest: type: object properties: payerInfo: type: object properties: zip: type: string default: '02453' firstName: type: string default: John lastName: type: string default: Doe phone: type: string default: '1234567890' paymentSource: type: object properties: creditCardInfo: type: object properties: creditCard: type: object properties: expirationYear: type: integer default: 2023 format: int32 securityCode: type: string default: '111' expirationMonth: type: string default: '07' cardNumber: type: string default: '4111111111111111' planId: type: integer default: 2283845 format: int32 SubscriptionUpdateSubscriptionRequest: type: object properties: planId: type: string default: '2283849' SubscriptionCreateMerchantManagedSubscriptionRequest: type: object properties: amount: type: number default: 45 format: float currency: type: string default: USD payerInfo: type: object properties: firstName: type: string default: John lastName: type: string default: Doe zip: type: string default: '02453' country: type: string default: us paymentSource: type: object properties: creditCardInfo: type: object properties: creditCard: type: object properties: expirationYear: type: integer default: 2026 format: int32 securityCode: type: string default: '111' expirationMonth: type: integer default: 5 format: int32 cardNumber: type: string default: '4012000033330026' SubscriptionCreateMerchantManagedChargeRequest: type: object properties: amount: type: number default: 45 format: float currency: type: string default: USD merchantTransactionId: type: string default: MyUniqueOnDemandSubscription taxReference: type: string default: 048deff0-a285-47e1-bc39-42f79bf0095b VendorCreateRequest: type: object properties: email: type: string default: vendor@example.com firstName: type: string default: Joe lastName: type: string default: Smith phone: type: string default: 1-123-456-7890 address: type: string default: 123 Main Street city: type: string default: Boston country: type: string default: US state: type: string default: MA zip: type: string default: '02453' defaultPayoutCurrency: type: string default: USD ipnUrl: type: string default: https://ipnaddress.com vendorPrincipal: type: object properties: firstName: type: string default: Joe lastName: type: string default: Smith address: type: string default: 123 Main Street city: type: string default: Boston country: type: string default: US zip: type: string default: '02453' dob: type: string default: 28-09-9999 personalIdentificationNumber: type: string default: '1234' driverLicenseNumber: type: string default: '561196411' email: type: string default: individual.vendor@bluesnap.com vendorAgreement: type: object properties: commissionPercent: type: integer default: 30 format: int32 payoutInfo: type: object properties: {} VendorUpdateVendorRequest: type: object properties: email: type: string default: vendor@bluesnap.com name: type: string default: Important Vendor firstName: type: string default: Joe lastName: type: string default: Smith address: type: string default: 123 Main Street city: type: string default: testing city zip: type: string default: '02453' country: type: string default: US phone: type: string default: 1-054-976-6778 state: type: string default: MA taxId: type: integer default: 123456789 format: int32 vendorUrl: type: string default: http://mycompany.com ipnUrl: type: string default: https://ipnaddress.com defaultPayoutCurrency: type: string default: USD vendorPrincipal: type: object properties: firstName: type: string default: Joe lastName: type: string default: Smith address: type: string default: 123 Main Street city: type: string default: Juneau zip: type: string default: '02453' country: type: string default: US dob: type: string default: 28-09-9999 personalIdentificationNumber: type: integer default: 1234 format: int32 driverLicenseNumber: type: string default: '561196411' email: type: string default: principal.name@vendor.com payoutInfo: type: array items: properties: payoutType: type: string default: ACH baseCurrency: type: string default: USD nameOnAccount: type: string default: vendor bankAccountClass: type: string default: PERSONAL bankAccountType: type: string default: CHECKING bankName: type: string default: Leumi bankId: type: string default: '123456789' country: type: string default: US city: type: string default: Portland address: type: string default: 1 bank address state: type: string default: MA zip: type: string default: '02453' bankAccountId: type: string default: '123456789' minimalPayoutAmount: type: integer default: 50 format: int32 paymentReference: type: string default: Payment for vendor 1234 refundReserve: type: integer default: 200 format: int32 type: object vendorAgreement: type: object properties: commissionPercent: type: integer default: 20 format: int32 accountStatus: type: string default: ACTIVE security: - sec0: [] sec1: [] x-readme: headers: - key: content-type value: Application/XML - key: bluesnap-version value: '3.0' explorer-enabled: true proxy-enabled: true x-readme-fauxas: true _id: 62ffeaab608d58fdd9a7a0c5:62ffe86f6cde99007824149e