PAYMENTS
SIMPLIFIED


Offer all the payment features your
customers want with a fast integration
that limits your PCI scope.

GET STARTED

API Base URLs

  • Production Server

    For processing live transactions

    https://api.payjunction.com

  • Test Server

    For development

    https://api.payjunctionlabs.com

Most Commonly Referred to Articles

POST /schedules

Schedule Transactions

  • Schedule a series of transactions (scheduleType: PERIODIC).
  • Schedule a future transaction (scheduleType: SPECIFIC_DATES).

Parameters

ACH

required name format description
* achRoutingNumber Valid Check Routing Number ACH Routing Number
* achAccountNumber Valid Check Account Number, Max Length 17 ACH Account Number
* achAccountType SAVINGS | CHECKING SAVINGS - Savings Account
CHECKING - Checking Account
* achType PPD | CCD

PPD - Consumer Account

  • billingFirstName field required (First Name)
  • billingLastName field required (Last Name)

CCD - Business Account

  • billingCompanyName field required (Company Name)

Keyed Card

Please consider the PCI Implications of transmitting full card number data.
required name format description
* cardNumber Valid Credit Card Number.

Credit/Debit Card Number

NOTE: Please consider the PCI Implications of transmitting full card number data.

* cardExpMonth 1-12, Ex: 8 Expiration Month.
* cardExpYear 4 Digit Format. Ex: 2015 Expiration Year.
  cardCvv Valid CVV. Max Length 4 Card Verification Value.

Re-Bill by Vault ID

required name format description
* vaultId Valid Vault ID A Vault ID from a previously stored account.
  achType PPD | CCD Required for ACH Vaults.

ACH Type for this transaction. This is optional. If not present, the default ACH Type for the Vault will be used.
PPD - Consumer Account
CCD - Business Account

Re-Bill by Transaction ID

required name format description
* transactionId Valid Transaction ID A Transaction ID from a previously charged transaction.

Credit Card Security

required name format description
  avs ADDRESS
ZIP
ADDRESS_AND_ZIP
ADDRESS_OR_ZIP
BYPASS
OFF
This will check the billingAddress and billingZip.

ADDRESS - Decline if address does not match.

ZIP - Decline if zip does not match.

ADDRESS_AND_ZIP - Decline if address and zip don't match.

ADDRESS_OR_ZIP - Decline if address or zip don't match.

BYPASS - Try to match address and zip but do not decline if one does not match.

OFF - Do not run AVS
  cvv ON | OFF ON - CVV check on.
OFF - CVV check off.
  cardCvv Valid CVV. Max Length 4 The CVV code from the card.

Schedule Fields

All amount fields have a max value of 1,000,000. Amounts higher than 1,000,000 will cause a validation error. 

required name format description
  terminalId Valid Terminal Id The terminal on which the schedule will run transactions on.
  amountBase Money,
Format: X.XX
Ex: 1000.00
Base amount to charge.
  amountShipping Money,
Format: X.XX
Ex: 1000.00
If you want to track separate shipping amounts use this parameter.
  amountTip Money,
Format: X.XX
Ex: 1000.00
If you want to add a tip to the transaction then use this parameter.
  amountSurchargeTax Money,
Format: X.XX
Ex: 1000.00

Click here to learn how to use PayJunction's surcharge feature

Tax amount applied on the surcharge.

  amountTax Money,
Format: X.XX
Ex: 1000.00
If you are billing tax then use this parameter.

Schedule Type Fields

required name format description

*

scheduleType PERIODIC | SPECIFIC_DATES  
  interval DAY | MONTH | WEEK | YEAR Required for scheduleType=PERIODIC
  intervalCount Numeric Required for scheduleType=PERIODIC
  intervalCap Numeric

Optional for scheduleType=PERIODIC

If present, schedule will only run until this number of approved transactions is reached.

  startDate yyyy-MM-dd Required for scheduleType=PERIODIC
  specificDate1 yyyy-MM-dd Required for scheduleType=SPECIFIC_DATES

Only one specific date is supported for this type of schedule.

 

Billing Contact

required name format description
  billingIdentifier Max Length 64 Billing customer id. If you have your own customer ID you want to associate with the schedule.

*

billingFirstName Max Length 16

Billing first name. Required for ACH PPD transactions

  billingMiddleName Max Length 32 Billing middle name.

*

billingLastName Max Length 32

Billing last name. Required for ACH PPD transactions

* billingCompanyName Max Length 64

Billing company name. Required for ACH CCD transactions

  billingJobTitle Max Length 32 Billing job title. Ex: President
  billingPhone Max Length 24 Billing phone number.
  billingPhone2 Max Length 24 Billing alternate phone number.
  billingAddress Max Length 128 Billing street address.
  billingCity Max Length 32 Billing city.
  billingState Max Length 32 Billing state.
  billingZip Max Length 12 Billing zip.
  billingCountry Max Length 32 Billing country.
  billingEmail Max Length 128 Billing email.
  billingWebsite Max Length 128 Billing website.

Shipping Contact

required name format description
  shippingIdentifier Max Length 64 Shipping customer id. If you have your own customer ID you want to associate with the schedule.
  shippingFirstName Max Length 16 Shipping first name.
  shippingMiddleName Max Length 32 Shipping middle name.
  shippingLastName Max Length 32 Shipping last name.
  shippingCompanyName Max Length 64 Shipping company name.
  shippingJobTitle Max Length 32 Shipping job title. Ex: President
  shippingPhone Max Length 24 Shipping phone number
  shippingPhone2 Max Length 24 Shipping alternate phone number.
  shippingAddress Max Length 128 Shipping street address
  shippingCity Max Length 32 Shipping city.
  shippingState Max Length 32 Shipping state
  shippingZip Max Length 12 Shipping zip.
  shippingCountry Max Length 32 Shipping country.
  shippingEmail Max Length 128 Shipping email address.
  shippingWebsite Max Length 128 Shipping website.

Other Fields

required name format description
  invoiceNumber Max Length 32

Invoice number. If you would like to include an invoice number on the schedule for accounting.

  purchaseOrderNumber Max Length 32 Purchase order number. If you would like to mark this schedule with your own PO for accounting.
  bypassDuplicate true / false If true, bypasses duplicate schedule checks.

Example Responses

API version 2023-05-16 or above required to receive the surcharge object and fields in transaction response details. See how to use API versions here.

The surcharge object is only present if surcharge is enabled on the account.
Click here for more information regarding surcharge.

200 Success

On success, the newly created schedule is returned.

{
	"scheduleId" : 1053,
	"terminalId" : 51,
	"scheduleType" : "PERIODIC",
	"interval" : "MONTH",
	"intervalCount" : 1,
        "amountBase": "10.00",
        "amountSurcharge": "0.30",
        "amountTotal": "10.30",
        "surcharge" : {
               "percentage" : 3.00000,
               "status" : "APPLIED"
        },
	"vault" : {
		"accountType" : "VISA",
		"lastFour" : "1111",
		"type" : "CARD"
	},
	"billing" : {
		"firstName" : "Jane",
		"lastName" : "Doe"
	},
	"status" : "ACTIVE",
	"startDate" : "2021-08-18",
	"created" : "2021-08-16T22:14:10Z",
	"lastModified" : "2021-08-17T16:25:37Z",
	"nextTransaction" : "2021-08-18"
}

400 Pre-auth declined

Schedule creation requires a successful approval of a pre-auth to help ensure the payment is valid. If this pre-auth is declined, the decline code is returned.

{
	"response" : {
		"approved" : false,
		"code" : "05"
	}
}

409 Conflict

Returned if system detects a duplicate schedule. A schedule is a duplicate if an existing schedule for payment is present with the same amount.

Duplicate checks can be disabled by setting bypassDuplicate=true request parameter.