Overview of the pay by points APIs response objects.

Check Point Balance

Shown below is a sample response for a Check Point Balance API.

{
  "balance": {
    "value": 23718050,
    "currency": "INR"
  },
  "redeemable_amount": {
    "value": 3500,
    "currency": "INR"
  },
  "redeemable_points": 140,
  "is_eligible": true
}

The table below lists the various parameters returned in the payments response object.

ParameterTypeDescription
balanceobjectAn object that contains the card balance details.

Learn more about our balance child object.
redeemable_amountobjectAn object that contains the redeemable amount details.

Learn more about our redeemable_amount child object.
redeemable_pointsintegerTotal redeemable points available in the card.

Example: 140
is_eligiblebooleanCard eligibility status.

Example: true

Balance [Child Object]

The table below lists the various parameters in the balance child object. This object is part of the check point balance sample response object.

ParameterTypeDescription
valueintegerBalance available on the card.

Example: 23718050
currencystringType of currency.

Example: INR

Redeemable Amount [Child Object]

The table below lists the various parameters in the redeemable_amount child object. This object is part of the check point balance sample response object.

ParameterTypeDescription
valueintegerRedeemable amount on card.

Example: 3500
currencystringType of currency.

Example: INR

Create Payment via Pay By Points

Shown below is a sample response of a Create Payments API through payment method as POINTS.

{
  "data": {
    "order_id": "v1-240902072711-aa-KAw3iP",
    "merchant_order_reference": "9bba427e-18c5-4645-9bd7-0cdb384371d7",
    "type": "CHARGE",
    "status": "PENDING",
    "challenge_url": "https://pluraluat.v2.pinepg.in/web/auth/landing/?token=S50%2BoHJmZ8ftKIhAKv%2BqQws3%2FkfY39tiuaMcSY15i%2BWH%2Bx4N6I%2B7lrNWbcM4Dl72hU6",
    "merchant_id": "109968",
    "order_amount": {
      "value": 5000,
      "currency": "INR"
    },
    "pre_auth": false,
    "purchase_details": {
      "customer": {
        "email_id": "[email protected]",
        "first_name": "Kevin",
        "last_name": "Bob",
        "customer_id": "123456",
        "mobile_number": "9876543210",
        "billing_address": {
          "address1": "10 Downing Street Westminster London",
          "address2": "Oxford Street Westminster London",
          "address3": "Baker Street Westminster London",
          "pincode": "51524036",
          "city": "Westminster",
          "state": "Westminster",
          "country": "London"
        },
        "shipping_address": {
          "address1": "10 Downing Street Westminster London",
          "address2": "Oxford Street Westminster London",
          "address3": "Baker Street Westminster London",
          "pincode": "51524036",
          "city": "Westminster",
          "state": "Westminster",
          "country": "London"
        }
      },
      "merchant_metadata": {
        "key1": "DD",
        "key2": "XOF"
      }
    },
    "payments": [
      {
        "id": "v1-240902072711-aa-KAw3iP-cc-g",
        "status": "PENDING",
        "payment_amount": {
          "value": 1500,
          "currency": "INR"
        },
        "payment_method": "CARD",
        "payment_option": {
          "card_data": {
            "card_type": "CREDIT",
            "network_name": "VISA",
            "issuer_name": "NONE",
            "card_category": "CONSUMER",
            "country_code": "IND",
            "token_txn_type": "ALT_TOKEN"
          }
        },
        "acquirer_data": {
          "approval_code": "",
          "acquirer_reference": "7252620755296724003954",
          "rrn": ""
        }
      },
      {
        "id": "v1-240902072711-aa-KAw3iP-pt-P",
        "status": "PENDING",
        "payment_amount": {
          "value": 3500,
          "currency": "INR"
        },
        "payment_method": "POINTS",
        "acquirer_data": {
          "approval_code": "",
          "acquirer_reference": "",
          "rrn": "",
          "is_aggregator": true
        },
        "created_at": "2024-09-02T07:27:11.240154Z",
        "updated_at": "2024-09-02T07:27:52.950485Z"
      }
    ],
    "created_at": "2024-09-02T07:27:11.240136Z",
    "updated_at": "2024-09-02T07:27:52.950481Z"
  }
}

The table below lists the various parameters returned in the payments response object.

ParameterTypeDescription
order_idstringUnique identifier of the order in the Plural database.

Example: v1-5757575757-aa-hU1rUd
merchant_order_referencestringUnique identifier entered while creating a order.
  • Minimum length: 1 character.
  • Maximum length: 50 characters.
Example: 82d57572-057c-4826-5775-385a52150554
typestringPayment type.

Possible values:
  • CHARGE
  • REFUND
statusstringOrder status.

Possible values:
  • CREATED: When the order is successfully created.
  • PENDING: When the order is linked against a payment request.
  • PROCESSED: When the payment is received successfully.
  • AUTHORIZED: Only when pre_auth is true. When the payment is ready for authorization.
  • CANCELLED: When the payment gets cancelled.
  • ATTEMPTED: When the payment is unsuccessful due to incorrect OTP. You can retry OTP verification until the payment gets failed.
  • FAILED: Payment acceptance failed for reasons such as cancel transactions, maximum retries for OTP verification etc.
  • FULLY_REFUNDED: When the payment is completely refunded.
  • PARTIALLY_REFUNDED: When the partial refund is successful.
challenge_urlstringUse the generated challenge_url URL to navigate your users the checkout page.
merchant_idstringUnique identifier of the merchant in Plural database.

Example: 123456
order_amountobjectAn object that contains the transaction amount details.

Learn more about our order_amount child object.
pre_authbooleanThe pre-authorization type.

Possible values:
  • true: When pre-authorization is needed.
  • false: When pre-authorization is not required.
Example: false

Learn more about our pre-authorization..
purchase_detailsobjectAn object that contains the purchase details.

Learn more about our purchase_details child object.

Note: The presence of the key-values pairs in this object depends on the Input request.
paymentsarray of objectsAn array of object that contains the payment details.

Learn more about our payments child object.

Note: Payments response object can vary based on the payment methods and payment status.
created_atstringThe ISO 8601 UTC Timestamp, when the create order request was received by Plural.

Example: 2024-07-09T07:57:08.022056Z
updated_atstringThe ISO 8601 UTC Timestamp, when the order response object is updated.

Example: 2024-07-09T07:57:08.022065Z

Order Amount [Child Object]

The table below lists the various parameters in the order_amount child object. This object is part of the payments sample response object.

ParameterTypeDescription
valueintegerThe transaction amount is Paisa.
  • Minimum value: 100 (₹1)
  • Maximum value: 100000000 (₹10 lakh).
Example: 100
currencystringType of currency.

Example: INR

Purchase Details [Child Object]

The table below lists the various parameters in the purchase_details child object. This object is part of the payments sample response object.

ParameterTypeDescription
customerObjectAn object that contains the customer details.

Learn more about our customer child object.
merchant_metadataobjectAn object of key-value pair that can be used to store additional information.

Example: "key1": "DD"

Customer [Child Object]

The table below lists the various parameters in the customer child object. This is part of the purchase_details object.

ParameterTypeDescription
email_idstringCustomer's email address.
  • Minimum length: 1 character.
  • Maximum length: 50 character.
Example: [email protected]
first_namestringCustomer's first name.
  • Minimum length: 1 character.
  • Maximum length: 50 characters.
Example: Kevin
last_namestringCustomer's last name.
  • Minimum length: 1 character.
  • Maximum length: 50 characters.
Example: Bob
customer_idstringUnique identifier of the customer in the Plural database.
  • Minimum length: 1 character.
  • Maximum length: 19 characters.
Example: 123456
mobile_numberstringCustomer's mobile number.
  • Minimum length: 9 character.
  • Maximum length: 20 characters.
Example: 9876543210
billing_addressobjectAn object that contains the details of the billing address.

Learn more about our billing_address child object.
shipping_addressobjectAn object that contains the shipping address details.

Learn more about our shipping_address child object.
Billing Address [Child Object]

The table below lists the various parameters in the billing_address child object. This is part of the customer object.

ParameterTypeDescription
address1stringCustomer's billing address1.
  • Maximum length: 100 characters.
Example: 10 Downing Street Westminster London
address2stringCustomer's billing address2.
  • Maximum length: 100 characters.
Example: Oxford Street Westminster London
address3stringCustomer's billing address3.
  • Maximum length: 100 characters.
Example: Baker Street Westminster London
pincodestringPincode of the billing address.
  • Maximum length: 10 characters.
Example: 51524036
citystringCity of the billing address.
  • Maximum length: 50 characters.
Example: Westminster
statestringState of the billing address.
  • Maximum length: 50 characters.
Example: Westminster
countrystringCountry of the billing address.
  • Maximum length: 50 characters.
Example: London
Shipping Address [Child Object]

The table below lists the various parameters in the shipping_address child object. This is part of the customer object.

ParameterTypeDescription
address1stringCustomer's shipping address1.
  • Maximum length: 100 characters.
Example: 10 Downing Street Westminster London
address2stringCustomer's shipping address2.
  • Maximum length: 100 characters.
Example: Oxford Street Westminster London
address3stringCustomer's shipping address3.
  • Maximum length: 100 characters.
Example: Baker Street Westminster London
pincodestringPincode of the shipping address.
  • Maximum length: 10 characters.
Example: 51524036
citystringCity of the shipping address.
  • Maximum length: 50 characters.
Example: Westminster
statestringState of the shipping address.
  • Maximum length: 50 characters.
Example: Westminster
countrystringCountry of the shipping address.
  • Maximum length: 50 characters.
Example: London

Payments [Child Object]

The table below lists the various parameters in the payments child object. This object is part of the payments sample response object.

ParameterTypeDescription
idstringUnique identifier of the payment in the Plural database.
  • Maximum length: 50 characters.
Example: v1-5206071124-aa-mpLhF3-cc-l
statusstringPayment status.

Possible values:
  • PENDING: When the create payment API request is successfully received by Plural.
  • AUTHORIZED: Only when pre_auth is true. When the payment is ready for authorization.
  • CANCELLED: When the payment gets cancelled.
  • PROCESSED: When the payment is successfully received by Plural.
  • FAILED: When the payment fails, this can be for many reasons such as canceling payments, etc.
Example: PENDING
payment_amountobjectAn object that contains the details of the payment amount.

Learn more about our payment_amount child object.
payment_methodstringType of payment method.

Accepted values:
  • CARD
  • UPI
  • POINTS
Example: CARD
payment_optionobjectAn object that contains the details of the payment options.

Learn more about our payment_option child object.
acquirer_dataobjectAn object that contains the details of the acquirer data.

Learn more about our acquirer_data child object.
error_detailobjectAn object that contains the error details.

Learn more about our error_detail child object.

Note: This object is returned only for the failed payment.
capture_dataobjectAn object that contains the details of the capture data.

Learn more about our capture_data child object.

Note: The presence of the key-value pairs against this object depends on the pre-authorization type.
created_atstringThe ISO 8601 UTC Timestamp, when the create payment request was received by Plural.

Example: 2024-09-02T07:27:11.240154Z
updated_atstringThe ISO 8601 UTC Timestamp, when the payment response object is updated.

Example: 2024-09-02T07:27:52.950485Z

Payment Amount [Child Object]

The table below lists the various parameters in the payment_amount child object. This object is part of the payments object.

ParameterTypeDescription
valueintegerThe transaction amount is Paisa.
  • Minimum value: 100 (₹1).
  • Maximum value: 100000000 (₹10 lakh).
Example: 100
currencystringType of currency.

Example: INR

Payment Option [Child Object]

The table below lists the various parameters in the payment_option child object. This object is part of the payments object.

ParameterTypeDescription
card_dataobjectAn object that contains the card details.

Learn more about our card_data child object.
points_card_detailsobjectAn object that contains the point card details.

Learn more about our points_card_details child object.

Note:
  • With Plural, you can pay the eligible amount through points with a card payment only.
  • Card payments and point payments are two separate payments bonded against an order.
Card Data [Child Object]

The table below lists the various parameters in the card_data child object. This object is part of the payment_option object.

ParameterTypeDescription
card_typestringType of card.

Possible values:
  • DEBIT
  • CREDIT
Example: CREDIT
network_namestringCard network providers.

Example: VISA
issuer_namestringCard issuer entity.

Example: HDFC
product_namestringCard name.

Example: Visa Platinum
card_categorystringThe card category type.

Possible values:
  • CONSUMER
  • COMMERCIAL
  • PREMIUM
  • SUPER_PREMIUM
  • PLATINUM
  • OTHER
  • BUSINESS
  • GOVERNMENT_NOTES
  • PAYOUTS
  • ELITE
  • STANDARD
country_codestringCard issuers Country.

Example: IND
token_txn_typestringTransaction token type.

Possible values:
  • ALT_TOKEN
  • NETWORK_TOKEN
  • ISSUER_TOKEN
Example: ALT_TOKEN
Points Card Details [Child Object]

The table below lists the various parameters in the points_card_details child object. This object is part of the payment_option object.

ParameterTypeDescription
registered_mobile_numberstringPoint card registered mobile number.
  • Maximum length: 20 characters.
  • Minimum length: 9 characters.
Example: 9876543210

Supported characters:
  • 0-9
  • +
card_last4stringThe last four digits of your card number.

Has to be 4 digits.

Example: 1234

Supported characters: 0-9
card_numberstringCard Number.
  • Maximum length: 23 characters.
  • Minimum length: 12 characters.
Example: 123456789012

Supported characters: 0-9

Acquirer Data [Child Object]

The table below lists the various parameters in the acquirer_data child object. This object is part of the payments object.

ParameterTypeDescription
approval_codestringAuthorization code returned from acquirer against the payment.

Example: 030376
acquirer_referencestringUnique reference returned from acquirer for the payment.

Example: 202455840588334
rrnstringRetrieval reference number returned from acquirer for the payment.

Example: 419335023601
is_aggregatorbooleanThe selected aggregator model type.

Accepted values:
  • true: Plural is responsible for settling funds related to this payment.
  • false: Plural is not responsible for settling funds related to this payment.
Note:
  • When the is_aggregator is set to true, Plural acts as the acquirer on behalf of merchants, receiving funds from banks into a designated "Nodal Account".
  • When the is_aggregator is set to false, the Merchant has a direct relationship with the bank and the responsibility for settlement of funds lies with both of those parties.

Error Detail [Child Object]

The table below lists the various parameters in the error_detail child object. This object is part of the payments object.

ParameterTypeDescription
codestringThe error short Code.

Example: PAYMENT_DECLINED
messagestringError description explaining the why the error occured.

Example: Transaction declined due to insufficient balance

Capture Data [Child Object]

The table below lists the various parameters in the capture_details child object. This object is part of the payments object.

ParameterTypeDescription
merchant_capture_referencestringUnique identifier passed while creating the capture payment request.

Example: 5742ef1e-4606-4c11-5757-705f4d415b6d
capture_amountobjectAn object that contains the capture amount details.

Learn more about our capture_amount child object.
created_atstringThe ISO 8601 UTC Timestamp, when the amount captured.

Example: 2024-07-11T11:52:12.484105Z
Capture Amount [Child Object]

The table below lists the various parameters in the capture_amount child object. This object is part of the capture_data object.

ParameterTypeDescription
valueintegerThe transaction amount is Paisa.
  • Minimum value: 100 (₹1).
  • Maximum value: 100000000 (₹10 lakh).
Example: 100
currencystringType of currency.

Example: INR