贝宝 REST API 使用模板创建发票
PayPal REST API Create Invoice with Template
有没有人使用特定的选定模板成功创建过 PayPal 发票?
我似乎无法让它工作。
已尝试在调用中指定 template_id,也已尝试将所需模板设置为默认模板。在这两种情况下,API 响应都包含所选模板 ID,但在发送发票时,它不使用所选模板(可以看出,因为没有徽标)。
这是 API 调用:
curl -v -X POST https://api.paypal.com/v1/invoicing/invoices/ \
-H "Content-Type:application/json" \
-H "Authorization: Bearer <Access-Token>" \
-d '{
"template_id": "TEMP-66B140465N059453G",
"items": [
{
"name": "Part E",
"quantity": 2,
"unit_price": {
"currency": "USD",
"value": "10.15"
}
}
],
"shipping_info": {
"first_name": "John",
"last_name": "Doe",
"business_name": "Not applicable",
"phone": {
"country_code": "001",
"national_number": "5039871234"
},
"address": {
"line1": "1234 Broad St.",
"city": "Portland",
"state": "OR",
"postal_code": "97216",
"country_code": "US"
}
},
"shipping_cost": {
"amount": {
"currency": "USD",
"value": "15.01"
}
},
"allow_tip": false
}'
这是回复:
"id":<Invoice ID>,
"number":"0004",
"template_id":"TEMP-66B140465N059453G",
"status":"DRAFT",
"merchant_info":{},
"shipping_info":{"first_name":"John","last_name":"Doe","business_name":"Not applicable","phone":{"country_code":"001","national_number":"5039871234"},"address":{"line1":"1234 Broad St.","city":"Portland","state":"OR","postal_code":"97216","country_code":"US"}},
"items":[{"name":"Part E","quantity":2.0,"unit_price":{"currency":"USD","value":"10.15"}}],
"invoice_date":"2017-05-30 PDT",
"shipping_cost":{"amount":{"currency":"USD","value":"15.01"}},
"tax_calculated_after_discount":false,
"tax_inclusive":false,
"total_amount":{"currency":"USD","value":"35.31"},
"metadata":{"created_date":"2017-05-30 13:35:39 PDT"},
"allow_tip":false
如果有人有任何想法,很乐意听取他们的意见。
谢谢。
我最终联系上了 PayPal 的某个人。他们说 merchant_info 必须在请求中传递才能使模板工作。
这基本上违背了为我们使用模板的目的,所以我从来没有费心去测试它。
最后,我决定不使用模板。
我们正在更正有关如何使用模板 ID 的说明。抱歉造成混淆。
当您进行基本集成以创建和发送发票时,您根本不需要使用模板。
如果您正在创建一个完整的发票应用程序,您希望最终用户(开票人)能够创建模板并在创建发票时访问它们,那么模板很有用。请参阅 PayPal.com 网站了解如何使用模板。
此致,
克里斯汀
如果您只是想将徽标添加到 API 创建的发票中,请在发布草稿之前将此行放在 JSON 的末尾:
},
"note": "Thank you for your business!",
"terms": "no refunds after 30 days",
"logo_url": "https://link_to_your_log.PNG"
}
有没有人使用特定的选定模板成功创建过 PayPal 发票? 我似乎无法让它工作。
已尝试在调用中指定 template_id,也已尝试将所需模板设置为默认模板。在这两种情况下,API 响应都包含所选模板 ID,但在发送发票时,它不使用所选模板(可以看出,因为没有徽标)。
这是 API 调用:
curl -v -X POST https://api.paypal.com/v1/invoicing/invoices/ \
-H "Content-Type:application/json" \
-H "Authorization: Bearer <Access-Token>" \
-d '{
"template_id": "TEMP-66B140465N059453G",
"items": [
{
"name": "Part E",
"quantity": 2,
"unit_price": {
"currency": "USD",
"value": "10.15"
}
}
],
"shipping_info": {
"first_name": "John",
"last_name": "Doe",
"business_name": "Not applicable",
"phone": {
"country_code": "001",
"national_number": "5039871234"
},
"address": {
"line1": "1234 Broad St.",
"city": "Portland",
"state": "OR",
"postal_code": "97216",
"country_code": "US"
}
},
"shipping_cost": {
"amount": {
"currency": "USD",
"value": "15.01"
}
},
"allow_tip": false
}'
这是回复:
"id":<Invoice ID>,
"number":"0004",
"template_id":"TEMP-66B140465N059453G",
"status":"DRAFT",
"merchant_info":{},
"shipping_info":{"first_name":"John","last_name":"Doe","business_name":"Not applicable","phone":{"country_code":"001","national_number":"5039871234"},"address":{"line1":"1234 Broad St.","city":"Portland","state":"OR","postal_code":"97216","country_code":"US"}},
"items":[{"name":"Part E","quantity":2.0,"unit_price":{"currency":"USD","value":"10.15"}}],
"invoice_date":"2017-05-30 PDT",
"shipping_cost":{"amount":{"currency":"USD","value":"15.01"}},
"tax_calculated_after_discount":false,
"tax_inclusive":false,
"total_amount":{"currency":"USD","value":"35.31"},
"metadata":{"created_date":"2017-05-30 13:35:39 PDT"},
"allow_tip":false
如果有人有任何想法,很乐意听取他们的意见。
谢谢。
我最终联系上了 PayPal 的某个人。他们说 merchant_info 必须在请求中传递才能使模板工作。 这基本上违背了为我们使用模板的目的,所以我从来没有费心去测试它。
最后,我决定不使用模板。
我们正在更正有关如何使用模板 ID 的说明。抱歉造成混淆。
当您进行基本集成以创建和发送发票时,您根本不需要使用模板。
如果您正在创建一个完整的发票应用程序,您希望最终用户(开票人)能够创建模板并在创建发票时访问它们,那么模板很有用。请参阅 PayPal.com 网站了解如何使用模板。
此致, 克里斯汀
如果您只是想将徽标添加到 API 创建的发票中,请在发布草稿之前将此行放在 JSON 的末尾:
},
"note": "Thank you for your business!",
"terms": "no refunds after 30 days",
"logo_url": "https://link_to_your_log.PNG"
}